This savory ham and potato casserole is wonderfully cheesy, flavorful, and super satisfying. It’s a delicious way to use leftover ham, and it can do double duty as a brunch recipe or a dinner dish. I love using sharp white cheddar cheese, but smoked gouda or gruyere are other tasty choices!
Meet your new favorite comfort food:

A Savory Brunch Recipe (That Isn’t Eggs)
Cheesy, garlicky, hearty ham and potato casserole. Couldn’t you just dive right in? The flavors and textures are reminiscent of tartiflette, a creamy potato and bacon casserole from the French Alps. This is satisfying fare that’s perfect for a snow day—but you don’t have to be mountainside to enjoy it! 😉
With all the sweets around this time of year, a savory recipe is extra welcome. You know I love a good make-ahead breakfast casserole or easy frittata when hosting for the holidays, but not everyone likes or can have eggs, so I set out to create an eggless casserole that’s just as delicious and deserving of a prime spot on the brunch table. It’s also a wonderful choice in the spring when planning your Easter brunch recipes.
Here’s Why You’ll Love This Ham & Potato Casserole
- As flavorful as ham and cheese strata, but with potatoes instead of bread
- Egg-free alternative to breakfast casserole & quiche
- As welcome for brunch as it is for dinner
- Creamy, cheesy gravy-like sauce comes together easily on the stove
- A great way to use up leftover cooked ham
- Make-ahead friendly
- Satisfying, cold-weather comfort food

Key Ingredients You Need
- Potatoes: I recommend Russet or Yukon Gold potatoes for this casserole. Both hold their shape pretty well, and at the same time, taste buttery soft. You need to briefly pre-cook them, but only for about 5–6 minutes. Feel free to peel them, or leave the peels on.
- Cooked ham: If you have leftover ham, go ahead and use it here. Or just buy an 8-ounce ham steak, which is what I did for the pictured casserole. Instead of ham, feel free to use cooked sausage or bacon.
- Cheese: I use white cheddar, but you could also use regular cheddar, smoked gouda, gruyere, pepper jack, or a mix. Potatoes aren’t picky.
- Smoked paprika + ground mustard: This is a common flavor combo in many brunch and ham recipes, such as ham and cheese breakfast strata and deviled eggs. (And even beer cheese dip!) Don’t worry, this dish does not taste like mustard.
- Parsley: I usually use dried parsley in the sauce and then garnish the finished casserole with fresh, but you can use either.
- Milk: Whole milk makes the best cream sauce texture, though low-fat, or nondairy milks would work in a pinch. Do not use nonfat milk.
You also need butter, garlic, onion, salt, pepper, and flour.

Prep the Potatoes First: Peel, Cut, Boil
You need to par-boil the potatoes for this casserole. Peel and chop the potatoes, then boil for just a few minutes, to give them a head start on softening. Gather your sauce ingredients in the meantime.

Make a Quick & Creamy Homemade Sauce
You’ll make an easy (but uber-flavorful) gravy-like cream sauce, flavored with garlic and onion, smoked paprika and ground mustard, and some herby parsley. The sauce starts like the filling for this turkey pot pie. Bring it all together with some butter and flour for thickening, and use milk as the liquid. It’s pretty easy.
Now all you have to do is combine everything, and bake. Here’s the pre-cooked and drained potatoes, ham, and cheese:

Stir it all together with the creamy sauce (just toss it all right in the greased baking pan). Any 3–4-quart baking dish works, such as a 9×13-inch pan. I use a round 4-quart baking dish.

Bake the casserole covered, and then when it’s almost done, sprinkle with cheese and return to the oven uncovered. (What’s a casserole without some cheese on top?!) You know it’s ready when the cheese is melted and the casserole is bubbling all over.

You Can Prep It Ahead
The best part about this casserole, and recipes like this baked cream cheese French toast casserole and reader-favorite everything bagel breakfast casserole, is that you can prep it ahead.
To make it ahead, assemble the casserole, then cover and refrigerate overnight. Remove it from the refrigerator, allow it to come up to room temperature for about 30 minutes, and then bake as directed; you may need to add an extra few minutes to the bake time. I added these instructions to the printable recipe card below.
Here’s What to Serve With Ham & Potato Casserole
If serving this casserole for brunch, it nestles nicely alongside platters of fresh fruit, eggs, bacon or sausage, smoked salmon, slow cooker cinnamon rolls, or whole wheat blueberry pancakes. (None of which require the oven!)
Flavor tip: add a drizzle of hot sauce on top before serving!
If this will be a main dish for dinner, serve this comforting casserole with some green sides like a fresh salad, steamed green beans, or asparagus. Or make it a side dish to accompany a lighter main, like crab cakes, seared scallops, or baked lemon herb salmon. Lots of ways to enjoy this versatile dish!

Other Casserole Recipes

Cheesy Ham & Potato Casserole
- Prep Time: 30 minutes
- Cook Time: 45 minutes
- Total Time: 1 hour, 15 minutes
- Yield: serves 10
- Category: Breakfast
- Method: Cooking
- Cuisine: American
Description
This hearty ham and potato casserole is cheesy, flavorful, and satisfying. It’s a delicious way to use leftover ham, and it can do double duty as a brunch recipe or a dinner dish. For other ingredient suggestions, see recipe Notes below.
Ingredients
- 2 pounds (about 915g) potatoes (I recommend Russet or Yukon Gold)
- 2 cups (about 300g or 8 ounces) cubed ham
- 1 and 1/2 cups (150g or 5.25 ounces) shredded sharp white cheddar cheese, divided
- 3 Tablespoons (43g) unsalted butter
- 3/4 cup (100g) chopped yellow onion (1/2 of a large onion)
- 3 garlic cloves, minced
- 3/4 teaspoon salt
- 1/2 teaspoon fresh ground pepper
- 1/2 teaspoon smoked paprika
- 1/2 teaspoon ground mustard
- 1 teaspoon dried parsley (or 2 teaspoons fresh chopped parsley)
- 3 Tablespoons (24g) all-purpose flour
- 2 cups (480ml) whole milk
- optional, for garnish: chopped fresh parsley, green onion, chives, or hot sauce
Instructions
- Peel potatoes, cut into 3/4-inch pieces (just eyeball it). You’ll have just over 6 cups chopped potatoes. Cover with water in a medium pot. Bring to boil. Once boiling, boil for just 5–6 minutes. You don’t want the potatoes super soft and tender just yet, only slightly softened. Drain.
- Grease a 9×13-inch or any 3–4-quart oven-safe dish. Add warm drained potatoes, ham, and 1 cup (about 100g) of shredded cheese. Gently toss together. Set aside.
- Preheat oven to 375°F (191°C).
- Melt the butter in a large skillet or saucepan over medium heat. Add the onion and garlic and cook, stirring occasionally, until onions have softened, about 3 minutes. Stir in salt, pepper, smoked paprika, ground mustard, parsley, and flour until combined and flour has absorbed any liquid. Reduce heat to low, and then slowly stir in the milk. Simmer for 3–5 minutes or until thickened into a gravy consistency. Remove from heat. Taste and, if desired, add more salt, pepper, paprika, mustard, or parsley to taste.
- Pour warm sauce over ham and potatoes. Toss gently to coat.
- Bake, covered with aluminum foil, for 30 minutes. Remove aluminum foil, sprinkle remaining cheese on top, and return to the oven for 5–10 more minutes or until cheese is melted and casserole is bubbling around the edges.
- Remove from the oven and garnish with fresh parsley, green onion, chives, or a drizzle of hot sauce.
- Store leftovers in the refrigerator for up to 1 week. Reheat as desired. To reheat the entire casserole, cover with aluminum foil and reheat in a 350°F (177°C) oven for 20 minutes.
Notes
- Make Ahead Instructions: This is an excellent make-ahead recipe because you can assemble it before baking up to 1 day in advance. Assemble the casserole through step 5. Cover and refrigerate overnight. Remove from the refrigerator, and allow to sit at room temperature for 30 minutes. Continue with step 6, adding an extra 5–10 minutes to the bake time before adding the cheese topping.
- Freezing Instructions: To freeze the unbaked casserole, assemble it then cover tightly and freeze for up to 3 months. Thaw at room temperature, then bake as directed. You can also freeze the baked and cooled casserole. Cover tightly and freeze for up to 3 months. Thaw at room temperature, then cover with aluminum foil and reheat in a 350°F (177°C) oven for 20 minutes.
- Ham: Instead of ham, feel free to use the same amount of cooked and chopped/crumbled sausage, or about 1 and 1/2 cups chopped/crumbled bacon.
- Cheese: Instead of white cheddar, feel free to use regular sharp cheddar cheese, smoked gouda, gruyere, pepper jack, or a mix.
- Ground mustard: This is a common ingredient in cheesy and/or brunch dishes; it adds a sharp kick and depth of flavor. I don’t recommend skipping it.
- Milk: Whole milk makes the best cream sauce texture, though low-fat, or nondairy milks would work in a pinch. Do not use nonfat milk, and do not use half-and-half because it’s too thick.
Keywords: ham potato casserole
This recipe is fantastically flavored. Best Ham & Potato Casserole I have tasted..
★★★★★
My goodness! This is a really tasty recipe. I used the cheeses that I had on hand- Mexican 4 cheese in the casserole and sharp yellow cheddar on top. And because I wasn’t sure of my potato weight, I made extra sauce ‘justin case’, I did end up using the extra.
★★★★★
So glad you enjoyed this recipe, Geo!
I made this for brunch for my family for Easter. I just was not feeling up to the full Easter meal this year. I added crushed up croutons to the final step with the last addition of cheese. My family loved this dish, and we had zero leftover!
★★★★★
Made this today and it was so easy and delicious!
★★★★★
Cannot wait to try this! Can I make this gluten free by substituting cornstarch for the flour in the sauce?
Hi Sharon, cornstarch could work. I would halve the amount, though.
Ran out of potatoes, so used half carrots, half potatoes. We go through milk quickly in our house, so I used half water, half milk. Turned out deliciously.
★★★★★
This is exactly the type of comfort food recipe I was looking for! It was so easy to put together and came out great! The only thing I did differently was put the peeled, diced potatoes in the oven (rather than boil them) while I made the sauce. Served with roasted broccoli and cauliflower. Can’t wait to have leftovers for lunch tomorrow.
★★★★★
This recipe was so delicious, thank you!! I love how easy it was to make, and that the leftovers are just as yummy. This meal is definitely going into the regular rotation.
Sally, could I use cream cheese instead of cheddar? My friend can eat cream cheese but not other cheese? Idk but she can.
Hi Connie, that may work, but likely make a much heavier sauce. I haven’t tested it to be certain, or if a smaller amount of cream cheese could do. Let me know if you test anything out.
I want to try this recipe, but I haven’t seen smoked paprika in my super market. Can I use regular paprika if I can’t find the smoked variety?
Absolutely.
Can I use sweet paprika if I don’t have smoked paprika?
Yes, absolutely.
What can I substitute for ham to make a vegetarian version?
Hi Talya, You can use chopped bell peppers. Cook it with the onions + garlic as you make the creamy sauce.
I made the casserole using 1/2 white potatoes and 1/2 yams. Some of us preferred white and others preferred yams. They were both delicious! I also used an orange pepper diced, and sauteed with the onion and garlic . Everyone liked it saying ‘This is a keeper recipe’.
★★★★★
Can Yams be used in place of white potatoes?
Hi Diane, we haven’t tried it ourselves, but since yams have a drier, starchier texture like a regular baking potato, they should work well here. Please let us know if you give it a try!
Fantastic recipe! The instructions lead you to the perfect dish- no uncooked potatoes! Thank you for sharing. My family loves it.
★★★★★
My kids are moderately picky, so when I try new recipes, I hope for the best but expect grumbling. I am so grateful that they LOVED this casserole. My son said it was the best thing he’d ever eaten. My husband and I agreed that the sauce makes this dish amazing. Thanks for another great recipe!
★★★★★
My family asked me to put this recipe on the regular meal rotation. The only change I made was to use medium cheddar cheese. Thank you for a wonderful, crowd pleasing, family approved recipe!
★★★★★
Husband said this was really good. High complements from coming from him! Used sharp cheddar and pepper jack cheeses, only boiled potatoes for about 3 minutes, and added a few splashes of heavy cream to stretch the sauce a bit.
★★★★★
So good and pretty easy to make. I divided it between two smaller casserole dishes and one will go with my son to his college apartment. Easy meals are always so welcomed by college students!
★★★★★
You read my mind- I needed a way to use up the leftover holiday ham and this was so delicious! The seasoning was perfect as written. I love ways to reinvent left overs, and also love your skillet turkey pot pie recipe for the turkey left overs. Happy holidays and New Year’s to you!
★★★★★
I don’t know what to do with the other ‘divided’ cheese.
Hi Ali, in step 6, sprinkle remaining cheese on top, and return to the oven for 5–10 more minutes or until cheese is melted and casserole is bubbling around the edges.
I think in this recipe you forget to tell when to add the cheese to the sauce and how much. Haha!
Hi April! See step 2 – you spread 1 cup cheese with the potatoes and ham, the rest goes on top!
What a great idea to use sauce in place of eggs! And thank you for using mostly classic seasonings for a breakfast casserole. Sometimes, I get so caught up in trying to please my family with new tastes that I forget to go back to the tried and true which were wonderful as well. I’m going to try this for New Year’s! Thank you for all your recipes and making me look like a rock star! Happy Holidays! xo
★★★★★
5 stars!! We loved this recipe! Made it for dinner with roasted Brussel sprouts as a side Even my picky eaters were asking that we make it again! Perfectly savory and satisfying on a chilly night
★★★★
Could I add some bell peppers in with the onion and garlic? Or would it be weird?!
Not weird at all! In fact, I’ve made this with chopped green pepper. Cook it with the onions + garlic as you make the creamy sauce.
Looks wonderful! We are invited to friends for Christmas lunch, so I might make this for our Christmas Eve! Thanks for another savory recipe.
Can I use smoked ham in this recipe? Thanks!
Absolutely. Enjoy!
What is for supper tonight? Mystery solved. Looks great. Tried to give it five stars, only four registered .