
Tender diced potatoes and savory ham mingle in a velvety cheese sauce to create this comforting casserole that delivers homestyle satisfaction in every bite. The creamy sauce envelops each morsel while the golden cheese topping provides the perfect finishing touch, creating wonderful textural contrast. This versatile dish transitions effortlessly from casual family dinner to brunch gathering, making it a reliable recipe that works beautifully regardless of the occasion.
Last Easter, I found myself with an abundance of leftover ham and decided to transform it into this casserole for a casual family gathering the following day. My brother-in-law, who typically takes modest portions, helped himself to seconds and then quietly returned for thirds when he thought no one was looking. Something about the combination of creamy sauce, tender potatoes, and savory ham seems to spark the appetite, even in typically reserved eaters.
Essential Components
- Unsalted Butter: Creates the flavor foundation for the sauce. Starting with unsalted allows precise control over the dish's overall seasoning.
- Yellow Onion: Provides aromatic depth and subtle sweetness. Finely dicing ensures it melds seamlessly into the sauce without textural interruption.
- All-Purpose Flour: Works with butter to form the essential roux. This thickening agent creates silky sauce texture without lumps when properly incorporated.
- Whole Milk: Delivers richness and proper consistency to the sauce. The higher fat content produces superior creaminess compared to reduced-fat alternatives.
- Chicken Stock: Adds savory depth while maintaining pourable consistency. Homemade offers superior flavor, though quality store-bought provides excellent results.
- Russet Potatoes: Supply hearty, substantial texture that holds up during baking. Their higher starch content helps thicken the sauce further during cooking.
- Cooked Ham: Contributes essential protein and savory flavor throughout. Using leftover holiday ham adds depth, though deli ham works perfectly well.
- White Cheddar Cheese: Creates the golden, melty topping that defines this casserole. Freshly shredded melts more smoothly than pre-packaged varieties with anti-caking agents.
- Garlic Powder: Infuses the sauce with aromatic notes without textural interruptions. This dried form distributes evenly throughout the mixture.
Preparation Method
- Oven Preparation:
- Preheat your oven to 400°F with a rack positioned in the center for even heat distribution. Thoroughly grease a 9×13-inch baking dish with butter or cooking spray, ensuring complete coverage to prevent sticking during the long baking process.
- Sauce Foundation:
- Melt butter in a medium saucepan over medium heat until foaming subsides. Add finely diced onion, cooking for 4-5 minutes until translucent but not browned. This gentle cooking sweetens the onion while softening its texture to blend perfectly into the sauce.
- Roux Development:
- Sprinkle flour over the cooked onions, stirring continuously for about 2 minutes to cook out the raw flour taste. This creates a blonde roux that will thicken the sauce without darkening it, maintaining the creamy appearance of the finished dish.
- Liquid Integration:
- Gradually add milk and chicken stock in a steady stream while whisking constantly to prevent lumps from forming. This careful addition ensures a perfectly smooth sauce base. Add salt, pepper, and garlic powder, continuing to stir as the mixture warms and begins to thicken slightly.
- Sauce Finishing:
- Maintain medium heat while stirring frequently until the sauce reaches a consistency that coats the back of a spoon but remains pourable. This typically takes 5-7 minutes of gentle cooking. The sauce will continue thickening during baking, so avoid excessive reduction at this stage.
- Casserole Assembly:
- Spread diced potatoes evenly across the bottom of the prepared baking dish, creating a level foundation. Distribute diced ham over the potatoes, ensuring even coverage throughout. Pour the prepared sauce over the ham and potatoes, making sure all ingredients are completely covered.
- Initial Baking:
- Cover the baking dish tightly with aluminum foil to trap moisture, allowing the potatoes to cook through completely without the top drying out. Bake for 40-45 minutes until the potatoes are nearly tender when pierced with a fork but still offer slight resistance.
- Cheese Topping:
- Remove the casserole from the oven and carefully peel back the foil, being mindful of the hot steam. Sprinkle shredded white cheddar evenly across the surface, then return to the oven uncovered for an additional 10-15 minutes until the cheese melts completely and begins to develop golden spots.

My first attempt at this recipe taught me an important lesson about potato size—I cut them too large, resulting in some underdone pieces despite extended cooking time. Now I always dice them into 1/2-inch cubes, which cook perfectly in the specified time while still maintaining their shape and texture. This simple adjustment transformed the dish from good to exceptional, ensuring consistent results every time.
Serving Suggestions
This versatile casserole creates beautiful harmony with simple sides that complement without competing. For family dinner, serve alongside a crisp green salad dressed with vinaigrette to cut through the richness. When offering for brunch, pair with fresh fruit and warm biscuits for a complete meal. For casual entertaining, add roasted green beans or asparagus to provide color contrast and vegetable balance on the plate.
Creative Variations
This adaptable recipe welcomes numerous interpretations while maintaining its essential character. For added texture, sprinkle buttered breadcrumbs over the cheese during the final baking stage. Vegetable enthusiasts might incorporate frozen peas or steamed broccoli florets before adding the cheese topping. For additional savory depth, blend different cheese varieties like Gruyère and sharp cheddar for more complex flavor.
Keeping It Fresh
Store leftover casserole in airtight containers in the refrigerator for up to four days, maintaining both flavor and food safety. When reheating individual portions, add a tablespoon of milk before microwaving to restore creaminess. For best results with larger portions, cover with foil and warm in a 325°F oven until heated through, removing the foil for the last few minutes to re-crisp the top.

After preparing this ham and potato casserole countless times for family meals and potlucks, I've found it represents the perfect balance between comfort food satisfaction and practical preparation. The combination of make-ahead convenience with reliable results creates a dish that works equally well for busy weeknights or relaxed weekend brunch gatherings. Whether using holiday ham leftovers or simply craving something heartwarming, this casserole consistently delivers both comfort and satisfaction.
Common Questions About Cooking
- → Can I prepare this ham and potato casserole ahead of time?
- Yes! You can assemble this casserole up to 24 hours in advance. Prepare all the layers and the sauce, but don't bake it. Cover tightly with plastic wrap or aluminum foil and refrigerate. When ready to bake, remove from the refrigerator about 30 minutes before baking to take the chill off, then bake as directed. You may need to add an extra 10-15 minutes to the covered baking time since it will be starting cold.
- → What type of potatoes work best for this casserole?
- Yukon Gold or Russet potatoes are ideal for this casserole. Yukon Golds hold their shape well while becoming creamy when baked, while Russets have a fluffy texture that absorbs the sauce nicely. Whichever you choose, slice them about 1/8-inch thick for even cooking. You can leave the skins on for added texture and nutrition, or peel them for a more uniform appearance.
- → Can I freeze this ham and potato casserole?
- This casserole can be frozen either before or after baking. If freezing before baking, assemble completely (except for the final Parmesan and paprika topping), cover tightly with foil, and freeze for up to 3 months. Thaw overnight in the refrigerator before baking as directed, adding about 15 minutes to the cooking time. If freezing after baking, cool completely, cover tightly, and freeze. Thaw and reheat in a 350°F oven until heated through, about 30 minutes.
- → How can I make this casserole healthier?
- To make a lighter version, substitute the sour cream with Greek yogurt, use low-fat milk instead of whole milk, and opt for reduced-fat cheese. You can also use low-sodium soup and ham to reduce salt content. To add more nutrition, incorporate vegetables like broccoli, peas, or bell peppers between the layers, or add a layer of wilted spinach. For a higher-fiber option, leave the potato skins on or use sweet potatoes for part of the potato amount.
- → What can I serve with this ham and potato casserole?
- This hearty casserole pairs well with lighter sides to balance the meal. Try a crisp green salad with a vinaigrette dressing, steamed or roasted green vegetables like broccoli, asparagus, or green beans, or a simple coleslaw. For a complete comfort food experience, serve with warm dinner rolls or crusty bread. It's also delicious with applesauce or a fruit salad on the side, as the sweetness complements the savory casserole.