The cooking time for ham depends on whether it is uncooked or fully cooked and the weight of the ham:
- Uncooked, bone-in ham: Roast at 325°F. For a half ham (5 to 7 pounds), cook 22 to 25 minutes per pound. For a whole bone-in ham (10 to 14 pounds), cook 18 to 20 minutes per pound
- Fully cooked bone-in ham: Heat at 325°F for about 10 to 15 minutes per pound until heated through. For example, a 9-pound ham takes about 2 to 2.25 hours
- When glazing a fully cooked ham, remove foil about 30 minutes before the end, brush with glaze, and bake uncovered for 25 to 30 minutes more to caramelize the glaze
- For baking a fully cooked ham, a common method is to cook 10 to 14 minutes per pound at 325°F, then increase oven temperature to 425°F for the last 30 minutes while glazing to get a nice caramelized surface, followed by a 20-minute rest before carving
- Always use a meat thermometer to ensure the internal temperature reaches 145°F for safety and optimal juiciness
In summary, cooking times vary from about 10 to 25 minutes per pound depending on whether the ham is precooked or raw, with typical oven temperatures around 325°F and finishing with higher heat for glazing. Resting the ham for 15 to 20 minutes after cooking is recommended before carving.