There’s something about a bubbling casserole of Shepherd’s Pie coming out of the oven that feels like a full-body hug. I remember the first time I made it on a cold weeknight after a long shift. The smell of rosemary and garlic drifting through the kitchen was enough to slow everything down. That simple dish taught me comfort food doesn’t have to be fancy to be unforgettable.

This recipe for classic Shepherd’s Pie hits all the right notes. It’s hearty, deeply savory, and layered with rich beef or lamb gravy under golden mashed potatoes. If you’ve never made it from scratch, don’t worry. I’ll walk you through each step so you can get that same soul-warming feeling in your own kitchen.
Jump to:
Why You’ll Love This Recipe
- Classic Comfort: This is the kind of meal that feels like home. Warm, filling, and loaded with nostalgic flavor, it’s the ultimate comfort food for chilly nights.
- Easy to Customize: Whether you prefer beef or lamb, dairy or non-dairy, this recipe adapts to your needs without losing its charm.
- Make-Ahead Friendly: Busy week? You can prep everything in advance and just pop it in the oven when you're ready. It tastes even better the next day.
- Crowd-Pleaser: It’s the kind of dish that disappears quickly. Perfect for family dinners, holiday gatherings, or potlucks.
- Balanced and Satisfying: You get protein, veggies, and creamy mashed potatoes all in one bite. No extra sides required unless you want them.

Ingredients You'll Need
For the Meat Filling:
- 2 tablespoons olive oil
- 1 cup chopped yellow onion
- 1 pound ground beef or ground lamb
- 2 teaspoons dried parsley
- 1 teaspoon dried rosemary
- 1 teaspoon dried thyme
- ½ teaspoon salt
- ½ teaspoon ground black pepper
- 1 tablespoon Worcestershire sauce
- 2 garlic cloves, minced
- 2 tablespoons all-purpose flour
- 2 tablespoons tomato paste
- 1 cup beef broth
- 1 cup frozen mixed peas and carrots
- ½ cup frozen corn kernels
For the Potato Topping:
- 1½ to 2 pounds russet potatoes, peeled and cubed
- 8 tablespoons unsalted butter
- ⅓ cup half and half
- ½ teaspoon garlic powder
- ½ teaspoon salt
- ¼ teaspoon ground black pepper
- ¼ cup grated parmesan cheese
📌 Tip: If you want extra creaminess, swap the half and half for heavy cream. And for a rustic texture, leave a few small potato lumps when mashing.

How to Make Shepherd’s Pie
Step 1: Sauté the aromatics
Heat the olive oil in a large skillet over medium-high heat. Add chopped onion and cook for about 5 minutes until it softens and starts to brown slightly. This is where the base flavor begins, so take your time.
Step 2: Brown the meat
Add the ground beef or lamb to the skillet. Break it up with a wooden spoon. Sprinkle in the parsley, rosemary, thyme, salt, and pepper. Stir occasionally and cook until the meat is browned and no longer pink.

Step 3: Build the gravy
Add the minced garlic and Worcestershire sauce. Stir for one minute until the garlic is fragrant. Then mix in the flour and tomato paste until everything is well coated. Slowly pour in the beef broth. Stir well to combine and thicken.

Step 4: Add the veggies
Stir in the frozen peas and carrots, along with the corn. Let the mixture simmer for about 5 minutes. It should be thick and hearty by now. Set it aside and preheat your oven to 400 degrees Fahrenheit.

Step 5: Make the mashed potatoes
Boil the cubed potatoes in a large pot of salted water for about 10 to 15 minutes until fork-tender. Drain well, then return them to the hot pot. Add butter, half and half, garlic powder, salt, and pepper. Mash until smooth and creamy. Stir in the parmesan cheese at the end.
Step 6: Assemble and bake
Spoon the meat filling into a baking dish and spread it into an even layer. Gently top it with the mashed potatoes and spread them evenly. If your dish is full, place it on a baking sheet to catch any bubbling. Bake uncovered for 25 to 30 minutes until the top is lightly golden and the edges are bubbling.

Step 7: Let it rest
Remove from the oven and let it sit for at least 10 to 15 minutes. This helps everything set and makes serving easier.
Pro Tips from My Kitchen
✓ Use Yukon Golds for richer mashed potatoes – Russets work great, but if you want creamier and slightly sweet mashed potatoes, Yukon Golds are your secret weapon.
✓ Let the meat filling cool slightly before topping – This helps prevent the mashed potatoes from sinking into the gravy. It also makes spreading easier.
✓ Rough up the top of the potatoes with a fork – Those little peaks and ridges will crisp up beautifully in the oven and give the dish a golden crust.
✓ Add an egg yolk for firmer mashed potatoes – If you want a topping that really holds its shape, stir in a raw egg yolk after mashing and let it mix in thoroughly.
✓ Rest before serving – This part is underrated. Letting it sit for 10 to 15 minutes after baking helps everything settle and enhances the flavor.
✓ Double the batch and freeze one – This dish freezes incredibly well. Just wrap tightly and freeze unbaked. When ready to eat, thaw overnight and bake as usual.

Frequently Asked Questions about Shepherd’s Pie
Traditionally, Shepherd’s Pie is made with ground lamb while Cottage Pie is made with ground beef. Both versions are similar in structure but have slightly different flavor profiles due to the meat.
Absolutely. You can fully assemble it, cover it, and store it in the fridge for up to three days before baking. Let it sit at room temperature for about 20 minutes before placing it in the oven.
Yes. Let the pie cool completely, wrap it tightly, and freeze. For best results, freeze before baking. When ready, thaw it overnight in the fridge and bake as usual.
Reheat individual portions in the microwave or rewarm the whole dish in the oven at 350 degrees Fahrenheit until heated through. Cover with foil to keep the mashed potatoes from drying out.
You can, but it adds a nice depth of flavor and helps thicken the gravy. If you skip it, consider adding a splash of red wine or a bit more flour to balance the texture and taste.

Shepherd’s Pie Recipe
Ingredients
Meat Filling
- 2 tablespoon olive oil
- 1 cup chopped yellow onion
- 1 lb ground beef or lamb
- 2 teaspoon dried parsley
- 1 teaspoon dried rosemary
- 1 teaspoon dried thyme
- ½ teaspoon salt
- ½ teaspoon ground black pepper
- 1 tablespoon Worcestershire sauce or soy sauce for no anchovies
- 2 cloves garlic minced
- 2 tablespoon all-purpose flour
- 2 tablespoon tomato paste
- 1 cup beef broth
- 1 cup frozen mixed peas and carrots
- ½ cup frozen corn kernels
Potato Topping
- 1 ½ to 2 lb russet potatoes peeled and cut into 1 inch cubes
- 8 tablespoon unsalted butter
- ⅓ cup half and half or heavy cream for extra creaminess
- ½ teaspoon garlic powder
- ½ teaspoon salt
- ¼ teaspoon ground black pepper
- ¼ cup grated parmesan cheese
Instructions
- Heat olive oil in a skillet. Add onions and cook until softened and slightly browned.
- Add ground meat. Break apart and cook with dried herbs, salt, and pepper until browned.
- Stir in garlic and Worcestershire sauce, then add flour and tomato paste. Pour in broth and stir until thickened.
- Add peas, carrots, and corn. Simmer for 5 minutes. Preheat oven to 400°F (200°C).
- Boil potatoes until fork-tender. Drain, mash with butter, half and half, garlic powder, salt, pepper, and parmesan.
- Spread meat filling in baking dish. Top evenly with mashed potatoes. Bake for 25–30 minutes until golden and bubbling.
- Let rest for 10–15 minutes before serving.
Notes
- For creamier potatoes, use Yukon Golds or add heavy cream.
- Let meat cool slightly before topping to keep layers intact.
- Use a fork to create peaks on mashed potatoes for a crispier top.
- Add an egg yolk to the mash for a firmer topping if desired.
- Freezes well—make a double batch and save one for later.





Stephanie S. says
Made tonight and my family loved it!
Olivia Ross says
So happy to hear that! 🤍
Tiffany P says
My husband said it’s the BEST shepherds pie he’s ever had! Thank you!
Olivia Ross says
So happy to hear that! 🤍, Thank you so much!