| |

Classic Hachis Parmentier (Authentic French Shepherd’s Pie)

Craving an authentic French shepherd’s pie made with real ingredients and deep flavour? This Classic Hachis Parmentier recipe is a traditional French comfort food dish that layers buttery mashed potatoes over slowly simmered ground beef, infused with onion, garlic, thyme, and a splash of white wine.

Unlike North American versions, this recipe uses no cheese or vegetables, staying true to the rustic, centuries-old French version — and it’s even better the next day.

👉 Watch the full recipe video on YouTube: Classic Hachis Parmentier


Classic Hachis Parmentier

Why This Hachis Parmentier Recipe is Perfect for Canadians

✅ Made with simple, affordable ingredients
✅ Perfect for meal prep or Sunday batch cooking
✅ Rich and flavourful without being heavy
✅ Great freezer meal for Canadian winters
✅ A true taste of France at home

If you love comforting French meals, you’ll also enjoy our Homemade Meatloaf Recipe and our Traditional Gratin Dauphinois.


Ingredients

Classic Hachis Parmentier

For the mashed potatoes

  • 1.2 kg yellow-fleshed potatoes (Yukon Gold or similar)
    (approx. 8 cups diced)
  • 20 g salt (for boiling water) (1 tbsp)
  • 80 g salted butter (about 5½ tbsp)
  • 50–100 ml warm milk (3–6 tbsp, adjust to texture)

Want a fluffier mash? See our Homemade Mashed Potatoes Guide.


For the beef filling

  • 800 g ground beef (about 1¾ lbs)
  • 2 white onions, finely chopped
  • 2 garlic cloves, minced
  • 1 tbsp duck fat or vegetable oil
  • 100 ml dry white wine (7 tbsp)
  • 300 ml homemade veal stock or low-sodium beef broth (1¼ cups)
  • 1 bay leaf
  • 1 sprig thyme
  • Salt and freshly ground black pepper, to taste

Out of veal stock? Use a rich homemade beef stock or sauce for best flavour.


Step-by-Step Instructions

Classic Hachis Parmentier

1. Boil the potatoes

Peel and chop the potatoes into large chunks. Place in a large pot, cover with cold water, and add 1 tbsp salt. Bring to a boil, then simmer for 30 minutes or until completely tender.

Tip: Always start potatoes in cold water for even cooking.


Classic Hachis Parmentier

2. Sauté the aromatics

While the potatoes cook, heat the duck fat or oil in a large skillet. Sauté the chopped onions and garlic on medium heat for 5–7 minutes, until soft and translucent (but not browned).


Classic Hachis Parmentier

3. Brown the ground beef

Add the beef to the pan. Break it up and cook for about 7–10 minutes until browned and no longer pink. Season with salt and pepper.


Classic Hachis Parmentier

4. Deglaze and simmer

Pour in the white wine and let it reduce by half (5–6 minutes). Then add veal stock, thyme, and bay leaf.

Simmer uncovered for 35–40 minutes, stirring occasionally, until the liquid reduces and the meat is juicy but not soupy.


Classic Hachis Parmentier

5. Mash the potatoes

Drain the potatoes and return them to the pot. Add butter and mash until smooth. Stir in warm milk gradually to achieve a creamy texture that holds its shape.

Tip: Never use a blender for mashed potatoes. Mash by hand for best results.


Classic Hachis Parmentier

6. Assemble

Preheat your oven to 500°F (260°C) or to its highest setting.

In a deep baking dish or individual ramekins, layer the beef mixture first, then top with mashed potatoes. Smooth the top with a spatula or the back of a spoon.

Want extra texture? Score the top with a fork to create ridges that crisp up in the oven.


Classic Hachis Parmentier

7. Bake

Bake uncovered for 10–12 minutes, or until the top starts to brown. Broil for 1–2 minutes at the end for extra golden finish.

Let cool slightly before serving.


Tips and Tricks

  • Use Yukon Golds: They mash smoothly but hold structure.
  • Reduce the stock properly: The filling should be moist, not soupy.
  • Freezer-friendly: Freeze in portions for easy weeknight dinners.
  • Make it richer: Stir in an egg yolk or a dash of cream into your mash for a luxurious twist.
Classic Hachis Parmentier

Substitutions

🧈 Duck fat → Use olive oil or butter
🥩 Beef → Mix with pork for softer texture
🍷 No wine? → Skip or use a splash of balsamic
🌿 No thyme/bay? → Sub with rosemary or herbes de Provence
🥔 Lactose-free → Use lactose-free milk and plant-based butter


What to Serve With It


Classic Hachis Parmentier

Frequently Asked Questions

Can I freeze Hachis Parmentier?

Yes! Let it cool completely, then wrap tightly and freeze for up to 3 months. Reheat at 350°F (175°C) for 30–40 minutes.


How do I avoid gluey mashed potatoes?

Use a potato masher, not a blender. Mash gently, and don’t overmix after adding milk.


Is Hachis Parmentier the same as shepherd’s pie?

Almost. In France, it’s typically made with beef and no vegetables or cheese, while British shepherd’s pie uses lamb and often includes carrots and peas.


Can I make this vegetarian?

Yes. Replace the beef with lentils or mushrooms, and use vegetable broth instead of veal stock.


How do I reheat leftovers?

Reheat covered in the oven at 350°F (175°C) for 20–25 minutes. Individual portions can be microwaved.


Storage & Freezer Tips

  • Fridge: Store in an airtight container up to 4 days.
  • Freezer: Freeze in portions. Thaw in fridge overnight before reheating.

More Classic French Recipes You’ll Love


Useful Links
🛒 Michel Dumas Shop: Explore our kitchen essentials, including aprons and knives.
🌐 Linktree: Access all our important links in one place.
📱 YouTube | Instagram | Facebook | TikTok: Follow us for the latest recipes and culinary tips.

Classic Hachis Parmentier

Classic Hachis Parmentier (Authentic French Shepherd’s Pie)

Craving an authentic French shepherd’s pie made with real ingredients and deep flavour? This Classic Hachis Parmentier recipe is a traditional French comfort food dish that layers buttery mashed potatoes over slowly simmered ground beef, infused with onion, garlic, thyme, and a splash of white wine.
Prep Time 30 minutes
Cooking Time 1 hour 10 minutes
Category Main Course
Cuisine French
Portions 4 people
Calories 400 kcal

Ingredients
  

Mashed Potatoes:

  • 1.2 kg yellow-fleshed potatoes Yukon Gold, peeled and chopped (~8 cups diced)
  • 20 g salt 1 tbsp (for boiling water)
  • 80 g salted butter about 5½ tbsp
  • 50 –100 ml warm milk 3–6 tbsp

Beef Filling:

  • 800 g ground beef ~1¾ lbs
  • 2 white onions finely diced
  • 2 garlic cloves minced
  • 1 tbsp duck fat or vegetable oil
  • 100 ml dry white wine 7 tbsp
  • 300 ml veal stock or low-sodium beef broth 1¼ cups
  • 1 bay leaf
  • 1 sprig thyme
  • Salt and black pepper to taste

Instructions
 

  • Cook the potatoes: Place peeled, chopped potatoes in a large pot. Cover with cold water and add 1 tbsp salt. Bring to a boil, then simmer 30 minutes or until fork-tender.
  • Sauté aromatics: In a large skillet, melt duck fat or heat oil over medium heat. Add onions and garlic. Sauté for 5–7 minutes until soft and translucent, without browning.
  • Brown the beef: Add ground beef to the pan. Cook, breaking it up, until browned (7–10 minutes). Season with salt and pepper.
  • Deglaze and simmer: Pour in the white wine and cook until reduced by half (5 minutes). Add veal stock, bay leaf, and thyme. Simmer uncovered for 35–40 minutes, stirring occasionally, until most liquid is absorbed. Discard herbs.
  • Make the mash: Drain the potatoes well. Return to the pot with butter. Mash until smooth. Gradually stir in warm milk until desired creamy texture is reached. Adjust salt if needed.
  • Assemble: Preheat oven to 500°F (260°C). Spread beef mixture in the base of a deep baking dish or individual ramekins. Top evenly with mashed potatoes. Smooth surface with a spatula or fork.
  • Bake: Bake uncovered for 10–12 minutes, or until the top starts to brown. Broil for 1–2 minutes for extra crispness. Let cool slightly before serving.

Video

Notes

Serving Suggestions

Storage

  • Fridge: Store in an airtight container up to 4 days
  • Freezer: Freeze portions up to 3 months
  • Reheat: Bake covered at 350°F (175°C) for 20–30 minutes, or microwave individual portions
Keywords Beef, Potatoes

Articles similaires

Leave a Reply

Your email address will not be published. Required fields are marked *