Make a comforting, family-friendly dinner tonight with this cheesy ham and potato casserole. This hearty casserole is an excellent way to use leftover holiday ham and comes together with minimal prep—perfect for busy weeknights or a relaxed Sunday supper.
With just a few pantry staples and a simple homemade cheese sauce, this easy casserole recipe delivers big flavor and satisfying portions. It’s a crowd-pleaser that reheats well, making it a smart choice when you want leftovers that taste almost as good the next day.

Ingredient Notes
See the printable recipe card below for exact measurements and complete step-by-step instructions.

This casserole is built from three main elements: potatoes, diced ham, and a rich homemade cheese sauce. A few tips for the best results:
- Butter – Use real butter for better flavor and texture in the sauce.
- Onion – A small yellow onion, finely diced, adds sweetness and depth.
- Flour – All-purpose flour thickens the cheese sauce into a smooth gravy.
- Chicken broth – Reduced-sodium works well so the casserole isn’t overly salty.
- Milk – Whole milk creates a creamier sauce; 2% can be used as a lighter alternative.
- Sharp cheddar cheese – Sharp cheddar gives bold flavor; mild or cheddar-jack are fine substitutions.
- Potatoes – Dice potatoes uniformly so they cook evenly. You may peel or leave skins on according to preference.
- Diced ham – Leftover holiday ham or store-bought diced ham both work well.
- Salt and pepper – Season to taste, keeping in mind the ham and cheese contribute saltiness.
How To Make Cheesy Ham and Potato Casserole
This casserole is made by layering potatoes and ham, then pouring a creamy cheese sauce over the top. Follow these steps for a reliable, delicious result.
Begin by prepping your ingredients: peel (if desired) and dice the potatoes into even pieces, and dice the ham if it isn’t already cubed.


Layer half the potatoes in a greased 9×13-inch baking dish and top with half the diced ham. Season with salt and pepper, then repeat with the remaining potatoes and ham. Set the assembled pan aside while you make the cheese sauce.


To make the sauce, melt the butter in a medium saucepan over medium heat. Add the diced onion and cook about 5 minutes, until the onion is tender. Stir in the flour and cook for a couple of minutes, allowing it to lightly brown.


Slowly whisk in the chicken broth and milk, then continue whisking over medium heat until the sauce is smooth and thickened, about 5–10 minutes. Remove from the heat and stir in 1½ cups of shredded cheddar until melted. Taste and season with salt and pepper as needed.


Pour the cheese sauce evenly over the layered potatoes and ham, smoothing it with the back of a spoon so everything is coated. Sprinkle the remaining cheese over the top and cover the dish with foil.
Bake in a preheated 400°F oven for 45–50 minutes covered, then remove the foil and bake an additional 10–20 minutes until the potatoes are tender and the top is golden and bubbly. Let rest a few minutes before serving.

Casserole Variations
- Frozen diced potatoes – Use thawed frozen diced potatoes to skip peeling and chopping. Bake uncovered and check for tenderness; timing will vary.
- Par-cook the potatoes – Boil diced potatoes until just fork-tender to shorten oven time. If pre-cooked, bake uncovered for about 30 minutes to meld flavors and melt the cheese.
- Add vegetables – Stir in vegetables like peas, green beans, corn, or broccoli for a one-pan meal that’s more balanced.
How To Store and Reheat
This casserole yields about six hearty servings. Store leftovers in an airtight container in the refrigerator for 3–4 days. Reheat portions in a 350°F oven until warmed through, or use the microwave for faster reheating.
This cheesy ham and potato casserole is a comforting staple that works well for family dinners, potlucks, or meal prep. The simple layers and creamy cheese sauce deliver classic flavors everyone will enjoy.
Cheesy Ham And Potato Casserole Recipe
Prep Time: 15 mins • Total Time: 1 hr 30 mins • Servings: 6 • Calories: 573 kcal
Ingredients
- ¼ cup butter
- 1 small onion, finely chopped
- ¼ cup all-purpose flour
- 1 cup chicken broth (reduced-sodium if preferred)
- 2 cups milk (whole milk recommended)
- 2½ cups sharp cheddar cheese, divided
- 3 pounds potatoes, peeled and diced
- 12 ounces diced ham
- Salt and pepper, to taste
Instructions
- Preheat the oven to 400°F and grease a 9×13-inch baking dish with nonstick spray.
- Arrange half the diced potatoes in the prepared dish and top with half the ham. Season with salt and pepper. Repeat with the remaining potatoes and ham.
- In a medium saucepan, melt the butter over medium heat. Add the chopped onion and sauté until tender, about 5 minutes.
- Stir in the flour and cook a couple of minutes, letting it brown lightly.
- Whisk in the chicken broth and milk until smooth. Simmer and whisk frequently until the sauce thickens, about 5–10 minutes. Season with salt and pepper.
- Remove from heat and stir in 1½ cups of the shredded cheese until melted.
- Pour the cheese sauce over the layered potatoes and ham, making sure everything is evenly coated. Sprinkle the remaining 1 cup of cheese over the top.
- Cover the pan with foil and bake for 45–50 minutes. Remove the foil and bake an additional 10–20 minutes until bubbly and golden. Let rest briefly before serving.
Notes
- If you want to reduce bake time, boil potatoes until fork-tender before assembling; then bake uncovered about 30 minutes.
- Store leftovers in an airtight container in the refrigerator for 3–4 days. Reheat in a 350°F oven or microwave.
Nutrition (per serving)
Calories: 573 kcal • Carbohydrates: 51 g • Protein: 29 g • Fat: 29 g • Saturated Fat: 15 g • Sodium: 1299 mg • Fiber: 5 g