I just made Ina Garten Shepherds Pie and honestly I can’t stop thinking about that ridiculous golden crust and what it does to the meat underneath.

I can’t stop thinking about Ina Garten Shepherds Pie. I love the way a rich layer of ground lamb meets mashed russet potatoes, all browned on top.
It’s not precious. It’s the Best Shepherds Pie Recipe when I want dinner that actually tastes like dinner, not a trend.
And the roast-y, winey notes that sneak out from the filling make me eat way too much. I adore that contrast between hearty meat and buttery, cheesy potato cap.
But honestly, it’s the stupidly satisfying forkfuls that keep me obsessed. Pure, meat-and-potato obsession.
No apologies. Give me that every single damn week.
Ingredients

- Ground lamb: Rich, hearty protein that gives the pie deep, meaty character.
- Olive oil: Adds a light fruitiness and helps everything brown nicely.
- Unsalted butter: Basically adds silkiness and that homey, buttery comfort.
- Yellow onion: Sweet base note, it softens and makes everything cozy.
- Carrots: Crunchy sweetness that keeps the filling from being too heavy.
- Celery: A little savory crunch and fresh green flavor.
- Garlic: Punchy aroma that wakes up the whole dish.
- Tomato paste: Concentrated tang and color, it pulls flavors together.
- All purpose flour: Thickens the filling so it’s hearty, not soupy.
- Dry red wine: Adds warmth and a subtle tannic depth.
- Beef or chicken broth: Liquid richness that keeps the meat juicy.
- Worcestershire sauce: Salty-umami boost, like a secret flavor handshake.
- Kosher salt: Brings out everything; use a bit more to taste.
- Black pepper: Fresh kick that balances the savory notes.
- Fresh thyme: Herbal lift, makes it smell like Sunday dinner.
- Fresh rosemary: Piney hint that pairs wonderfully with lamb.
- Russet potatoes: Starchy, fluffy mash that’s the whole cozy point.
- Whole milk: Creamy richness to make the potatoes silky smooth.
- Butter for potatoes: Basically indulgence; makes the mash dreamy.
- Parmesan or sharp cheddar: Cheesy tang, plus a golden, bubbly top.
- Extra cheese topping: Adds crunchy, melty goodness on top.
- Fresh parsley: Bright, herby finish; it keeps things from feeling heavy.
Ingredient Quantities
- 2 pounds ground lamb (you can use beef if you like)
- 2 tablespoons olive oil
- 2 tablespoons unsalted butter, divided
- 1 large yellow onion, finely chopped
- 3 carrots, peeled and diced
- 2 stalks celery, diced
- 3 cloves garlic, minced
- 2 tablespoons tomato paste
- 2 tablespoons all purpose flour
- 1 cup dry red wine
- 1 cup beef or chicken broth
- 2 tablespoons Worcestershire sauce
- 1 teaspoon kosher salt, plus more to taste
- 1/2 teaspoon freshly ground black pepper, plus more to taste
- 1 tablespoon fresh thyme leaves, chopped or 1 teaspoon dried thyme
- 1 tablespoon fresh rosemary, chopped or 1/2 teaspoon dried rosemary
- 2 pounds russet potatoes, peeled and cut into chunks
- 1/2 cup whole milk (or more for consistency)
- 4 tablespoons unsalted butter for the potatoes
- 1/2 cup grated Parmesan cheese or sharp cheddar, plus extra for topping
- 2 tablespoons chopped fresh parsley for garnish, optional
How to Make this
1. Preheat oven to 400F. Put potatoes in a big pot, cover with cold salted water, bring to a boil and cook until fork tender, about 15 to 20 minutes.
2. While potatoes cook, heat 2 tablespoons olive oil and 1 tablespoon butter in a large skillet over medium high heat. Add the ground lamb, break it up, and brown until no pink remains. Spoon off excess fat if there’s a lot.
3. Reduce heat to medium, push meat to one side, add the remaining 1 tablespoon butter, then add chopped onion, carrots and celery. Cook until vegetables are soft, about 6 to 8 minutes. Stir in garlic and cook 30 seconds.
4. Stir in tomato paste and sprinkle the 2 tablespoons flour over the mixture, cook 1 to 2 minutes to get rid of raw flour taste. Pour in the cup of red wine to deglaze the pan, scraping up browned bits, and let it reduce by about half.
5. Add the cup of broth, 2 tablespoons Worcestershire, thyme, rosemary, 1 teaspoon kosher salt and 1/2 teaspoon pepper. Bring to a simmer and cook until sauce thickens a bit, 6 to 10 minutes. Taste and adjust salt and pepper.
6. Drain potatoes and mash with 4 tablespoons butter, 1/2 cup whole milk (add more if you want creamier), and 1/2 cup grated Parmesan or sharp cheddar. Season with salt and pepper to taste. Don’t overmix or it’ll get gluey.
7. Spoon the meat and vegetable filling into a 9 by 13 inch baking dish (or similar). Spread mashed potatoes over the top, starting at the edges to seal in the filling. Smooth or make peaks with a fork so they brown nicely.
8. Sprinkle extra grated cheese on top if you like a golden crust. Place dish on a rimmed baking sheet to catch any drips.
9. Bake 20 to 25 minutes until bubbling and edges are hot. For a browned top turn the oven to broil for 2 to 4 minutes, watching like a hawk so it doesn’t burn.
10. Let rest 10 minutes, then sprinkle chopped parsley if using, slice and serve. Leftovers keep well and often taste even better the next day.
Equipment Needed
1. Large pot for boiling the potatoes
2. Colander to drain them
3. Large skillet or sauté pan for the lamb and veggies
4. Wooden spoon or spatula for breaking up meat and stirring
5. Chef knife and cutting board for chopping onion carrots celery and herbs
6. Potato masher (or fork) for mashing
7. Mixing bowl for the mashed potatoes
8. 9 by 13 inch baking dish (or similar)
9. Rimmed baking sheet to catch drips
10. Measuring cups and spoons plus oven mitts and a cheese grater for the topping
FAQ
Ina Garten Shepherd’s Pie Recipe Substitutions and Variations
- Ground lamb: swap with ground beef for a more familiar flavor, or use ground turkey for a leaner pie, or try a plant based crumble if you want it vegetarian. Each will change the taste a bit so season more if needed.
- Dry red wine: replace with extra beef or chicken broth plus a splash of balsamic vinegar to mimic the acidity and depth if you prefer not to cook with alcohol.
- Russet potatoes: use sweet potatoes for a sweeter, slightly healthier topping, or make a cauliflower mash if you want lower carbs. Texture will be different but still tasty.
- Parmesan or sharp cheddar: substitute gruyere or fontina for a nuttier, meltier top, or use smoked cheddar for a bolder flavor. Add a little extra salt if the cheese is mild.
Pro Tips
1) Brown the lamb really well and drain excess fat. Let it sit in the hot pan long enough to get those brown bits, they add tons of flavor. If there’s a lot of fat spoon most of it out, otherwise the filling will be greasy.
2) Let the wine reduce almost by half before adding broth, then taste for seasoning. Wine cooks down and concentrates, so wait till it’s syrupy; if it tastes flat add a splash of vinegar or a teaspoon of sugar to brighten it up.
3) Dry the cooked potatoes before mashing and use warm milk and melted butter. Steam off extra water in the pot for a minute after draining, then mash gently. Dont overwork them or they’ll turn gluey. Add cheese last so it melts into the mash instead of making it stringy.
4) Seal the edges and rest before serving. Spread the mash starting at the dish edges so the filling stays trapped, put the dish on a rimmed sheet to catch drips, and let it sit 8 to 10 minutes after baking so the juices set. If you broil for color watch it every 20 seconds or it can go from golden to burnt fast.

Ina Garten Shepherd's Pie Recipe
I just made Ina Garten Shepherds Pie and honestly I can't stop thinking about that ridiculous golden crust and what it does to the meat underneath.
6
servings
715
kcal
Equipment: 1. Large pot for boiling the potatoes
2. Colander to drain them
3. Large skillet or sauté pan for the lamb and veggies
4. Wooden spoon or spatula for breaking up meat and stirring
5. Chef knife and cutting board for chopping onion carrots celery and herbs
6. Potato masher (or fork) for mashing
7. Mixing bowl for the mashed potatoes
8. 9 by 13 inch baking dish (or similar)
9. Rimmed baking sheet to catch drips
10. Measuring cups and spoons plus oven mitts and a cheese grater for the topping
Ingredients
-
2 pounds ground lamb (you can use beef if you like)
-
2 tablespoons olive oil
-
2 tablespoons unsalted butter, divided
-
1 large yellow onion, finely chopped
-
3 carrots, peeled and diced
-
2 stalks celery, diced
-
3 cloves garlic, minced
-
2 tablespoons tomato paste
-
2 tablespoons all purpose flour
-
1 cup dry red wine
-
1 cup beef or chicken broth
-
2 tablespoons Worcestershire sauce
-
1 teaspoon kosher salt, plus more to taste
-
1/2 teaspoon freshly ground black pepper, plus more to taste
-
1 tablespoon fresh thyme leaves, chopped or 1 teaspoon dried thyme
-
1 tablespoon fresh rosemary, chopped or 1/2 teaspoon dried rosemary
-
2 pounds russet potatoes, peeled and cut into chunks
-
1/2 cup whole milk (or more for consistency)
-
4 tablespoons unsalted butter for the potatoes
-
1/2 cup grated Parmesan cheese or sharp cheddar, plus extra for topping
-
2 tablespoons chopped fresh parsley for garnish, optional
Directions
- Preheat oven to 400F. Put potatoes in a big pot, cover with cold salted water, bring to a boil and cook until fork tender, about 15 to 20 minutes.
- While potatoes cook, heat 2 tablespoons olive oil and 1 tablespoon butter in a large skillet over medium high heat. Add the ground lamb, break it up, and brown until no pink remains. Spoon off excess fat if there's a lot.
- Reduce heat to medium, push meat to one side, add the remaining 1 tablespoon butter, then add chopped onion, carrots and celery. Cook until vegetables are soft, about 6 to 8 minutes. Stir in garlic and cook 30 seconds.
- Stir in tomato paste and sprinkle the 2 tablespoons flour over the mixture, cook 1 to 2 minutes to get rid of raw flour taste. Pour in the cup of red wine to deglaze the pan, scraping up browned bits, and let it reduce by about half.
- Add the cup of broth, 2 tablespoons Worcestershire, thyme, rosemary, 1 teaspoon kosher salt and 1/2 teaspoon pepper. Bring to a simmer and cook until sauce thickens a bit, 6 to 10 minutes. Taste and adjust salt and pepper.
- Drain potatoes and mash with 4 tablespoons butter, 1/2 cup whole milk (add more if you want creamier), and 1/2 cup grated Parmesan or sharp cheddar. Season with salt and pepper to taste. Don't overmix or it'll get gluey.
- Spoon the meat and vegetable filling into a 9 by 13 inch baking dish (or similar). Spread mashed potatoes over the top, starting at the edges to seal in the filling. Smooth or make peaks with a fork so they brown nicely.
- Sprinkle extra grated cheese on top if you like a golden crust. Place dish on a rimmed baking sheet to catch any drips.
- Bake 20 to 25 minutes until bubbling and edges are hot. For a browned top turn the oven to broil for 2 to 4 minutes, watching like a hawk so it doesn't burn.
- Let rest 10 minutes, then sprinkle chopped parsley if using, slice and serve. Leftovers keep well and often taste even better the next day.
Notes
- Below you’ll find my best estimate of this recipe’s nutrition facts. Treat the numbers as a guide rather than a rule—great food should nourish both body and spirit. Figures are approximate, and the website owner assumes no liability for any inaccuracies in this recipe.
Nutrition Facts
- Serving Size: 400g
- Total number of serves: 6
- Calories: 715kcal
- Fat: 43g
- Saturated Fat: 26g
- Trans Fat: 0.5g
- Polyunsaturated: 4g
- Monounsaturated: 12.5g
- Cholesterol: 171mg
- Sodium: 645mg
- Potassium: 1216mg
- Carbohydrates: 35g
- Fiber: 4.5g
- Sugar: 6g
- Protein: 44g
- Vitamin A: 3000IU
- Vitamin C: 10mg
- Calcium: 67mg
- Iron: 4.3mg











