This flavorful ham and potato casserole combines these two hearty ingredients into a meal that's just as wonderful for breakfast as it is for dinner! Hearty potatoes and savory diced ham get layered with a rich, luscious cheese sauce for a heavenly meal!
Dinner really doesn’t get any easier than this hearty, creamy, and cheesy ham and potato casserole!
When you’re constantly on the go, quick and wholesome meals are exactly what you want to feed your family. Casseroles are perfect because they’re a filling all-in-one meal, but they’re so simple to whip up!
This ultra-cheesy ham and potato casserole is one of my favorites because it’s incredibly delicious but doesn’t take forever to make. I combine potatoes and ham with a flavor-packed cheese sauce, layered with extra mozzarella and cheddar cheese.
Pop it in the oven for an hour and you have an amazing dinner that even the pickiest of eaters will adore!
Casseroles are so great because you almost always have leftovers! I love leftover casserole for lunch on a cold day to warm me right up. Leftovers also freeze super well, so you can have this yummy ham and potato casserole whenever the craving hits.
❤️ Why You'll Love This Recipe!
So Hearty! Russet potatoes and savory ham make this a meal that’ll keep you going!
A Classic! Creamy, cheesy casseroles are a classic weeknight dinner staple! They’re so easy and delicious!
One-Pot Meal! This meal is perfect as is – you can serve with a vegetable on the side, but you don’t have to!
This easy-to-make ham and potato casserole is loaded with cheddar and mozzarella cheeses! I recommend shredding your own for the best melting, but you can easily buy pre-shredded cheeses.
- 2 tablespoons Butter – You can use salted or unsalted butter here, whatever you have on hand!
- ½ cup Yellow Onion – Or use white onion here, if desired! ½ cup of onion is equal to about 1 small onion, diced.
- 1 cup Heavy Cream – We’ll use heavy cream to make our cheese sauce! I recommend using heavy cream, but you can also use half & half or whole milk if you want a lighter sauce. (*See notes for how to do this best!)
- ½ cup Chicken Broth – Use homemade or your favorite store-bought brand of chicken broth!
- Seasoning – To season this delicious casserole, we’ll use ½ teaspoon each of salt, ground black pepper, and garlic powder. You can adjust these seasonings according to your taste!
- 1 cup Cheddar Cheese – You’ll need to shred the cheddar for this recipe! Divide the cheddar into two ½-cup portions. Amp up the cheddar deliciousness with some sharp or extra sharp cheddar!
- ½ cup Mozzarella Cheese – If shredding your own mozzarella, use low-moisture, part-skim mozzarella. Divide the mozzarella into two ¼-cup portions.
- 2 pounds Russet Potatoes – Scrub the potatoes well, then peel and cube into 1-inch pieces for the casserole!
- 16 ounces Diced Ham – The ham should be fully cooked and finely diced for this recipe!
*Be sure to see the recipe card below for ingredients, amounts & instructions!*
🔪 Step-by-Step Instructions
This cheesy ham and potato casserole just needs a 9x13 baking pan to help it bake up golden and bubbly! It’s an easy dinner that’s complete in one pan!
- Prepare oven and baking pan. Begin the casserole by preheating your oven to 400°F (205°C). Then, prepare a 9x13 baking pan by coating with butter or non-stick cooking spray.
- Sauté onion. Next, heat a saucepan with 2 tablespoons of butter over medium heat. Once the butter is melted and starting to bubble, add ½ cup of diced yellow onion. Then, sauté the onion until tender, fragrant, and translucent.
- Make the cheese sauce. To the sautéed onion, add 1 cup of heavy cream, ½ cup of chicken broth, and the seasoning (½ teaspoon each of salt, pepper, and garlic powder). Then, stir to combine and heat until the cream sauce just begins to bubble. Remove the sauce from the heat, and then add the 1st half of the divided cheddar and mozzarella cheeses (½ cup of cheddar cheese and ¼ cup of mozzarella cheese). Once you’ve added the cheese, stir into the sauce to melt, and set aside.
- Layer the casserole ingredients. To your prepared baking pan, layer the 2 pounds of washed, peeled, and cubed russet potato pieces. Then, add 16 ounces of diced, cooked ham and pour the cheese sauce over them. Next, top with the remaining ½ cup of cheddar cheese and ¼ cup of mozzarella cheese. After layering all the ingredients, cover your baking dish with a sheet of aluminum foil.
- Bake casserole. Next, bake the casserole at 400°F (205°C) for 45 minutes while covered, then remove the aluminum foil. After removing the foil, continue cooking for an additional 15 minutes or until the potatoes are tender and the sauce is bubbling.
- Cool and set. Once done, remove from the oven and allow the casserole to cool for about 10 to 15 minutes before serving.
This creamy, cheesy ham and potato casserole is one of my favorite easy dinners! I love to garnish the casserole with some chopped green onions, parsley, or chives for a pop of color.
Serve just as it is, or with a dinner roll to soak up all that cheesy sauce! Enjoy!
💭 Angela's Tips & Recipe Notes
- Milk and flour can be used in place of the heavy cream! If you use milk, you’ll need some flour to keep the sauce thick and creamy. Use 2 tablespoons of all-purpose flour and sprinkle it over the sautéed onions. Stir and cook for 1 minute to get rid of the raw flour taste, then gradually add in the milk, whisking as you go until the sauce is nice and smooth.
- Use leftover glazed ham for even more flavor! Do you have leftover glazed holiday ham hanging out in your freezer? I love to use that in this recipe – the glaze adds even more delicious flavor to the casserole!
- Make the recipe even easier by cutting the potatoes in advance! If you’re running low on time, you can wash, peel, and cube the potatoes then store in cold water for up to 1 day in advance.
- I recommend using sharp or cheddar cheese for the best flavor! The combination of flavorful cheddar and melty mozzarella is terrific in this casserole. When you use a sharp or extra sharp cheddar it helps to make the flavor more distinct!
🥡 Storing & Reheating
My cheesy ham and potato casserole will store in the fridge for up to 3 to 4 days. Store the cooled leftovers properly in an airtight container to keep it nice and fresh!
Everyone knows casseroles freeze terrifically! You can freeze an entire casserole, wrapped in a layer of plastic wrap and a layer of aluminum foil for up to 3 months.
When you’re ready to eat, defrost frozen leftovers in your fridge the night before reheating.
Reheating Ham & Potato Casserole
To restore this delicious casserole to its former cheesy glory, I like to use the oven! Preheat your oven to 350°F (175°C) and transfer the leftover casserole to a baking dish. Cover the casserole with a sheet of aluminum foil and warm in the oven for about 20 to 30 minutes.
Bake until the casserole is warmed through and bubbling. Depending on the size of your leftovers, you should adjust the reheat time accordingly!
If preferred, you can also reheat leftovers in the microwave! Transfer servings to a plate, cover with a paper towel and reheat in 1-minute intervals until thoroughly reheated.
🍲 More Amazing Casserole Recipes
- Doritos Chicken Casserole with Cream Cheese
- Sausage Hash Brown Breakfast Casserole
- Mexican Cornbread Casserole
- Bacon Cheddar Green Bean Casserole
- Chicken Stuffing Casserole
- Zucchini Squash Casserole
Do you love a recipe you tried? Please leave a 5-star 🌟rating in the recipe card below and/or a review in the comments section further down the page.
Stay in touch with me through social media @ Pinterest, Facebook, Instagram, or Twitter! Don't forget to tag me when you try one of my recipes!
Ham and Potato Casserole
- 2 tablespoon butter
- ½ cup yellow onion (diced, about 1 small yellow or white onion)
- 1 cup heavy cream
- ½ cup chicken broth
- ½ teaspoon each, salt & pepper (to taste)
- ½ teaspoon garlic powder
- 1 cup cheddar cheese (shredded - divided into two equal portions)
- ½ cup mozzarella cheese (shredded - divided into two equal portions)
- 2 lbs russet potatoes (washed, peeled, and cubed)
- 16 oz diced ham (cooked ham, finely diced)
- Preheat your oven to 400°F (205°C) and prepare a 9x13 baking pan by coating with butter or non-stick cooking spray.
- Heat a saucepan with the butter to medium heat. Once the butter is melted and starting to bubble, add the diced onion and saute until tender, fragrant, and translucent.2 tablespoon butter, ½ cup yellow onion
- Add the heavy cream, chicken broth, and seasoning (salt, pepper, and garlic powder) then stir to combine and heat until the cream sauce just begins to bubble.1 cup heavy cream, ½ cup chicken broth, ½ teaspoon each, salt & pepper, ½ teaspoon garlic powder
- Remove from heat and add the 1st half of the divided cheese portions (cheddar and mozzarella cheeses). Stir into the sauce to melt then set aside.1 cup cheddar cheese, ½ cup mozzarella cheese
- Layer the cubed potatoes and diced ham into your prepared baking dish then pour the cheese sauce over them. Top with the remaining half of the cheeses and cover your baking dish with a sheet of aluminum foil.2 lbs russet potatoes, 16 oz diced ham
- Bake at 400°F (205°C) for 45 minutes covered, then remove the aluminum foil. Continue cooking an additional 15 minutes or until the potatoes are tender and the sauce is bubbling.
- Remove from the oven when done and allow to cool for 10-15 minutes before serving.
- Milk and flour can be used in place of the heavy cream. Use 2 tablespoons all-purpose flour and sprinkle it over the sauteed onions. Stir and cook for 1 minute to get rid of the flour taste, then gradually add the milk whisking as you go. Continue whisking until all of the milk has been added and the sauce is creamy and smooth.
- Store leftovers in an airtight container and refrigerate for up to 3-4 days.
Angela is an at home chef that developed a passion for all things cooking and baking at a young age in her Grandma's kitchen. After many years in the food service industry, she now enjoys sharing all of her family favorite recipes and creating tasty dinner and amazing dessert recipes here at Bake It With Love!