I keep coming back to this cheesy ham and potato casserole because it turns simple leftovers into a hearty brunch or dinner everyone wants seconds of. One pan, melty cheese, tender potatoes, and savory ham make it almost impossible to stop at one scoop.

I’m obsessed with this Cheesy Ham and Potato Casserole because it hits that rich, salty, creamy spot without trying too hard. The diced ham brings big flavor, the sharp cheddar cheese gets all melty and bold, and every bite feels loaded in the best way.
I love it for brunch when I want something hearty, but I’ll absolutely eat it for dinner with zero apologies. And leftovers?
Even better. This is the kind of casserole I keep sneaking bites from before it ever reaches the table.
But honestly, who can blame me? Potatoes, cheese, ham.
That’s the whole reason.
Ingredients

- Russet potatoes turn soft and cozy, soaking up all that creamy sauce.
- Ham adds salty, meaty bites so it feels like a real dinner.
- Sharp cheddar brings the big cheesy flavor everyone actually wants.
- Mozzarella or Monterey Jack gives you that gooey, stretchy cheese pull.
- Whole milk keeps the sauce smooth without making it feel too heavy.
- Heavy cream makes it extra rich, because sometimes that’s the point.
- Sour cream adds tang and keeps the casserole from tasting flat.
- Butter gives the base that warm, homemade comfort food vibe.
- Flour helps thicken everything so it’s creamy, not soupy.
- Onion and garlic make the whole thing smell insanely good.
- Dijon mustard adds a tiny zip you’ll miss if it’s gone.
- Smoked paprika brings a little color and a cozy, smoky note.
- Breadcrumbs or panko give the top that crunchy, golden finish.
- Plus, parsley or chives make it look fresh instead of beige.
Ingredient Quantities
- 2 pounds russet potatoes, peeled and thinly sliced
- 2 cups cooked ham, diced
- 2 cups sharp cheddar cheese, shredded
- 1 cup shredded mozzarella or Monterey Jack cheese
- 1 cup whole milk
- 1/2 cup heavy cream
- 1 cup sour cream
- 3 tablespoons unsalted butter
- 3 tablespoons all purpose flour
- 1 medium yellow onion, finely chopped
- 2 cloves garlic, minced
- 1 teaspoon Dijon mustard
- 1 teaspoon kosher salt
- 1/2 teaspoon freshly ground black pepper
- 1/2 teaspoon smoked paprika
- 1/2 cup plain breadcrumbs or panko
- 2 tablespoons melted butter for topping
- 2 tablespoons chopped fresh parsley or chives for garnish
How to Make this
1. Preheat oven to 375°F. Butter a 9×13 inch baking dish and set aside.
2. In a large skillet melt 3 tablespoons unsalted butter over medium heat. Add the chopped onion and cook until softened, about 4 minutes, then stir in the minced garlic and cook 30 seconds.
3. Sprinkle 3 tablespoons all purpose flour over the onion mixture and cook, stirring, 1 minute to form a roux.
4. Gradually whisk in 1 cup whole milk and 1/2 cup heavy cream until smooth. Bring to a simmer until slightly thickened, 2 to 3 minutes. Stir in 1 teaspoon Dijon mustard, 1 teaspoon kosher salt, 1/2 teaspoon black pepper, and 1/2 teaspoon smoked paprika.
5. Remove sauce from heat and stir in 1 cup sour cream and 1 1/2 cups shredded sharp cheddar until smooth. Reserve the remaining cheddar and the 1 cup shredded mozzarella or Monterey Jack for the casserole topping and layers.
6. Layer half of the thinly sliced russet potatoes in the prepared dish, season lightly, then scatter half of the diced ham and half of the remaining cheeses over the potatoes. Pour half of the sauce evenly over the first layer.
7. Repeat with the remaining potato slices, ham, sauce, and top with the reserved shredded cheddar and the shredded mozzarella or Monterey Jack.
8. Mix 1/2 cup plain breadcrumbs or panko with 2 tablespoons melted butter and sprinkle evenly over the top of the casserole.
9. Cover the dish loosely with foil and bake for 45 minutes. Remove the foil and bake an additional 20 to 25 minutes until potatoes are tender and the top is golden and bubbly.
10. Let the casserole rest 10 minutes before serving. Garnish with 2 tablespoons chopped fresh parsley or chives.
Equipment Needed
1. 9×13 inch baking dish, buttered
2. Large ovenproof skillet or saucepan
3. Cutting board and chef’s knife
4. Measuring cups and spoons
5. Whisk
6. Mixing bowl and spatula
7. Vegetable peeler and mandoline or sharp knife for slicing potatoes thin
8. Aluminum foil and oven mitts
9. Baking sheet or wire rack for resting the casserole
10. Small bowl and spoon for mixing breadcrumbs and melted butter
FAQ
Cheesy Ham And Potato Casserole Recipe Substitutions and Variations
- Russet potatoes: Yukon Gold potatoes for creamier texture; red potatoes for firmer slices that hold shape; sweet potatoes for a sweeter, earthy twist.
- Cooked ham: Rotisserie chicken or shredded turkey for a milder poultry option; cooked bacon or pancetta for a smokier, saltier flavor; smoked tofu for a vegetarian alternative.
- Whole milk and heavy cream: Use 2 cups half and half for a lighter but still creamy sauce; evaporated milk plus a tablespoon of butter per cup to mimic richness; plain unsweetened almond or oat milk with 2 tablespoons melted butter per cup for a dairy-free-ish option.
- Sour cream: Plain Greek yogurt for tang and protein; crème fraîche for a richer, less tangy finish; mayonnaise thinned with a little milk for creaminess in a pinch.
Pro Tips
1) Slice the potatoes as evenly as possible, ideally with a mandoline. Even thickness means every slice will cook at the same rate so you avoid crunchy bits next to mushy ones.
2) Parboil the potato slices for 3 to 4 minutes or microwave them briefly before assembling if your slices are on the thicker side. That step cuts bake time and ensures tender layers without overbrowning the top.
3) Use low moisture cheeses when you can, and grate your own from blocks. Pre-shredded cheese often contains anti caking agents that can make the sauce slightly grainy.
4) If the edges start to brown too quickly after you remove the foil, tent a piece of foil loosely over just the browned spots to prevent burning while the center finishes cooking.
5) Let the casserole rest for the full 10 minutes after baking. That pause lets the sauce thicken and makes it much easier to slice and serve without everything sliding apart.

Cheesy Ham And Potato Casserole Recipe
I keep coming back to this cheesy ham and potato casserole because it turns simple leftovers into a hearty brunch or dinner everyone wants seconds of. One pan, melty cheese, tender potatoes, and savory ham make it almost impossible to stop at one scoop.
8
servings
534
kcal
Equipment: 1. 9×13 inch baking dish, buttered
2. Large ovenproof skillet or saucepan
3. Cutting board and chef’s knife
4. Measuring cups and spoons
5. Whisk
6. Mixing bowl and spatula
7. Vegetable peeler and mandoline or sharp knife for slicing potatoes thin
8. Aluminum foil and oven mitts
9. Baking sheet or wire rack for resting the casserole
10. Small bowl and spoon for mixing breadcrumbs and melted butter
Ingredients
-
2 pounds russet potatoes, peeled and thinly sliced
-
2 cups cooked ham, diced
-
2 cups sharp cheddar cheese, shredded
-
1 cup shredded mozzarella or Monterey Jack cheese
-
1 cup whole milk
-
1/2 cup heavy cream
-
1 cup sour cream
-
3 tablespoons unsalted butter
-
3 tablespoons all purpose flour
-
1 medium yellow onion, finely chopped
-
2 cloves garlic, minced
-
1 teaspoon Dijon mustard
-
1 teaspoon kosher salt
-
1/2 teaspoon freshly ground black pepper
-
1/2 teaspoon smoked paprika
-
1/2 cup plain breadcrumbs or panko
-
2 tablespoons melted butter for topping
-
2 tablespoons chopped fresh parsley or chives for garnish
Directions
- Preheat oven to 375°F. Butter a 9×13 inch baking dish and set aside.
- In a large skillet melt 3 tablespoons unsalted butter over medium heat. Add the chopped onion and cook until softened, about 4 minutes, then stir in the minced garlic and cook 30 seconds.
- Sprinkle 3 tablespoons all purpose flour over the onion mixture and cook, stirring, 1 minute to form a roux.
- Gradually whisk in 1 cup whole milk and 1/2 cup heavy cream until smooth. Bring to a simmer until slightly thickened, 2 to 3 minutes. Stir in 1 teaspoon Dijon mustard, 1 teaspoon kosher salt, 1/2 teaspoon black pepper, and 1/2 teaspoon smoked paprika.
- Remove sauce from heat and stir in 1 cup sour cream and 1 1/2 cups shredded sharp cheddar until smooth. Reserve the remaining cheddar and the 1 cup shredded mozzarella or Monterey Jack for the casserole topping and layers.
- Layer half of the thinly sliced russet potatoes in the prepared dish, season lightly, then scatter half of the diced ham and half of the remaining cheeses over the potatoes. Pour half of the sauce evenly over the first layer.
- Repeat with the remaining potato slices, ham, sauce, and top with the reserved shredded cheddar and the shredded mozzarella or Monterey Jack.
- Mix 1/2 cup plain breadcrumbs or panko with 2 tablespoons melted butter and sprinkle evenly over the top of the casserole.
- Cover the dish loosely with foil and bake for 45 minutes. Remove the foil and bake an additional 20 to 25 minutes until potatoes are tender and the top is golden and bubbly.
- Let the casserole rest 10 minutes before serving. Garnish with 2 tablespoons chopped fresh parsley or chives.
Notes
- Below you’ll find my best estimate of this recipe’s nutrition facts. Treat the numbers as a guide rather than a rule—great food should nourish both body and spirit. Figures are approximate, and the website owner assumes no liability for any inaccuracies in this recipe.
Nutrition Facts
- Serving Size: 300g
- Total number of serves: 8
- Calories: 534kcal
- Fat: 34.1g
- Saturated Fat: 20.2g
- Trans Fat: 0.2g
- Polyunsaturated: 1g
- Monounsaturated: 3.8g
- Cholesterol: 106mg
- Sodium: 978mg
- Potassium: 793mg
- Carbohydrates: 32g
- Fiber: 2.3g
- Sugar: 3.4g
- Protein: 23.8g
- Vitamin A: 2500IU
- Vitamin C: 4.5mg
- Calcium: 324mg
- Iron: 1mg





















