This Ham Shepherd’s Pie is a cozy dish that fills you up with creamy mashed potatoes, savory ham, and tasty veggies. It’s like a warm hug on a plate!
Every bite is comforting, and who doesn’t love a dash of ham in their dinner? I enjoy making this pie when I want something simple yet hearty—perfect for chilly nights!
Key Ingredients & Substitutions
Mashed Potatoes: Smooth and creamy mashed potatoes are best. You can use pre-made ones for convenience, or try sweet potatoes for a different flavor. I love adding a touch of sour cream or cream cheese for extra creaminess.
Cooked Ham: Diced ham gives a wonderful flavor. If you have leftover ham, that’s perfect! You can use turkey or chicken for a lighter option, or even a meat substitute for a vegetarian twist.
Cheddar Cheese: Sharp cheddar adds great flavor, but mild works too. Try using a mix of cheeses like Monterey Jack or Colby for variety. Vegan cheese can also substitute for a dairy-free option.
Onion and Garlic: Fresh ingredients add depth. If you’re short on time, onion powder and garlic powder can stand in as a substitute, although fresh gives a richer taste. I like using shallots for a milder flavor.
Frozen Peas: These are completely optional. Other veggies like corn or diced carrots can also work. If you want to skip veggies altogether, that’s totally fine too!
How Do I Make the Perfect Creamy Sauce?
Creating a creamy sauce is crucial to this dish. The process starts with cooking the onion and garlic to bring out their flavor. Once they’re fragrant, stir in the diced ham and optional peas.
- Add the flour right after the ham, cooking for 1-2 minutes. This removes the raw taste of the flour.
- Gradually pour in milk, stirring continuously to avoid lumps. Cook until the mixture thickens; this is important for a creamy consistency.
- Season with salt and pepper to meet your taste preferences before removing it from the heat.
This step is the backbone of good flavor in your Shepherd’s Pie, so don’t rush it! The goal is a thick, smooth sauce before you layer it with the potatoes.

How to Make Ham Shepherd’s Pie
Ingredients You’ll Need:
For the Filling:
- 2 cups cooked ham, diced
- 1/2 cup onion, finely chopped
- 2 cloves garlic, minced
- 1/2 cup frozen peas (optional)
- 2 tablespoons all-purpose flour
- 1 1/2 cups milk
- Salt and pepper to taste
- 1 tablespoon olive oil or cooking oil
- 1 cup shredded cheddar cheese (sharp or mild)
For the Mashed Potatoes:
- 4 cups mashed potatoes (smooth and creamy)
- 2 tablespoons butter
- Fresh parsley, finely chopped (for garnish)
How Much Time Will You Need?
This delicious Ham Shepherd’s Pie will take about 15 minutes to prepare and around 25-30 minutes to bake. So, in total, set aside about 45-50 minutes to make this comforting dish.
Step-by-Step Instructions:
1. Preheat the Oven:
Start by preheating your oven to 375°F (190°C) so it’s ready for baking when you’re finished preparing the dish.
2. Sauté the Aromatics:
In a skillet, heat the olive oil over medium heat. Add the chopped onion and minced garlic. Sauté them together for about 3-4 minutes until the onion becomes translucent and the garlic is fragrant. This step makes your filling super flavorful!
3. Add Ham and Peas:
Stir in the diced ham and frozen peas (if using). Cook this mixture for another 2 minutes, allowing the flavors to blend nicely.
4. Thicken the Sauce:
Next, sprinkle the flour over the ham mixture and stir it well to coat everything. Cook for 1-2 minutes to get rid of the raw flour taste. This will help thicken your filling.
5. Create the Sauce:
Slowly add the milk while stirring continuously. Keep mixing until the sauce thickens, then season with salt and pepper for taste. Remove the skillet from the heat once it’s done!
6. Mix in the Cheese:
Add half of the shredded cheddar cheese to the ham mixture. Stir until the cheese melts and is fully combined—you want that creamy goodness!
7. Layer the Filling:
In a large oven-safe skillet or baking dish, spread the ham mixture evenly over the bottom. This is your savory base layer!
8. Top with Mashed Potatoes:
Spoon the creamy mashed potatoes over the ham layer and smooth them out. Create ridges on top with a fork for a beautiful texture!
9. Add Cheese and Butter:
Sprinkle the remaining cheddar cheese on top of the mashed potatoes. Then, dot small pieces of butter across the surface for extra richness.
10. Bake:
Place the skillet in the oven and bake for 25-30 minutes. You’re waiting for the top to turn golden brown and the edges to bubble up—trust us, it’s worth the wait!
11. Cool and Garnish:
Once baked, take out your Shepherd’s Pie and let it cool for a few minutes. Then, sprinkle freshly chopped parsley on top for a burst of color and freshness.
12. Serve and Enjoy:
Dish out warm servings of your delicious Ham Shepherd’s Pie and enjoy the comforting flavors. It’s the perfect meal for any day!
Can I Use Leftover Ham for This Recipe?
Absolutely! Leftover ham works perfectly in this recipe. Just make sure to dice it into small pieces for even distribution in the pie.
How Can I Make This Recipe Healthier?
You can make this dish healthier by using mashed cauliflower instead of potatoes for the topping and reducing the cheese. You can also add more vegetables, like carrots or green beans, to the filling for added nutrition!
What’s the Best Way to Store Leftovers?
Store any leftovers in an airtight container in the fridge for up to 3 days. To reheat, you can microwave individual servings or warm it up in the oven until heated through.
Can I Freeze Ham Shepherd’s Pie?
Yes! You can freeze the assembled pie before baking. Just cover it tightly with plastic wrap and foil. When you’re ready to bake, you can cook it straight from the freezer, but add an extra 10-15 minutes to the baking time.
