Traditional Fish Pie Recipe: Flaky Potato Topping Over Creamy Savory Layers

Desserts

Traditional Fish Pie Recipe: Flaky Potato Topping Over Creamy Savory Layers

This traditional fish pie recipe delivers the comforting layers of creamy fish filling and golden, flaky potato topping that make it a British classic.

The secret lies in perfectly cooked fish—haddock or cod—simmered in a rich, savory sauce with leeks and potatoes, then crowned with velvety mashed potatoes baked to crispy perfection.

I’ve refined this recipe over years to balance authenticity with modern convenience, ensuring every bite tastes like a home-cooked meal from a cozy pub.

The foundation of a great fish pie starts with the filling: tender fish flaked into a creamy, well-seasoned base that absorbs flavors without falling apart. Meanwhile, the potato topping must achieve that signature flaky texture—achieved through precise baking and a touch of butter for richness.

This dish is a pescatarian staple, packed with protein and comfort, yet adaptable for dietary needs like gluten-free crusts or herb variations for extra depth.

What you’ll end up with is a dish that’s creamy inside and flaky on top, with layers of savory fish and buttery potatoes that melt in your mouth. The aroma alone—warm, buttery, and slightly herby—will have everyone gathered around the table.

Perfect for family dinners, potlucks, or a cozy night in, this recipe brings tradition to your kitchen with foolproof results.

Ready to master this classic? The instructions walk you through every step—from prepping the fish to baking the perfect crust—so you’ll achieve restaurant-quality layers at home. Whether you stick to the traditional method or add your own twist, this fish pie is a guaranteed crowd-pleaser.

👨‍🍳
Difficulty
Medium
🐟
Category
Seafood
🔥
Calories
Med Cal

Ingredients for traditional fish pie

Fresh fish, creamy layers, and buttery potatoes—this classic pie needs just these staples.

Ingredient Amount Notes
Fresh White Fish Fillets 🐟 1 ½ lb Haddock or cod, skinless
Russet Potatoes 🥔 2 lbs Starchy variety for flaky topping
Leeks 🧅 2 whole White and light green parts only
Heavy Cream 🥛 1 cup Full-fat for richness
Whole Milk 🥛 ½ cup For velvety texture
Unsalted Butter 🧈 ½ cup Cold, cubed for mashed potatoes
Salted Butter 🧈 2 tbsp For topping crispiness
All-Purpose Flour 🌾 1 tbsp For thickening sauce
Fresh Dill 🌿 ¼ cup Chopped, for freshness
Fresh Parsley 🌿 ⅛ cup Chopped, for garnish
Garlic Cloves 🧄 4 cloves Minced for flavor depth
Shallots 🧅 2 whole Finely chopped, for aroma
Lemon Juice 🍋 1 tbsp Freshly squeezed
Salt 🧂 1 ½ tsp Kosher or sea salt
Ground Black Pepper 🌶️ ½ tsp Freshly ground preferred

The fish is non-negotiable—haddock or cod stays firm yet flaky when cooked right. Fishmonger sections at stores like Whole Foods or Trader Joe's often have pre-cut fillets, but if buying whole, ask for the center-cut pieces. Look for bright, translucent flesh with no fishy odor. The potatoes? Russets or Yukon Golds work best—their starchiness makes that signature flaky crust. If you can't find them, Idaho potatoes are a solid backup. For the leeks, wash thoroughly to remove dirt from the crevices—no one likes gritty pie.

No fresh dill? Dried dill at half the amount works in a pinch, but trust me, fresh makes all the difference. Short on shallots? Extra garlic plus a pinch of onion powder gets you close. The butter matters—full-fat, unsalted for the mashed potatoes, and salted for the topping. If you're gluten-free, swap the flour for cornstarch (use the same amount). For extra richness, stir in a splash of crème fraîche into the filling. And if you're not a fan of leeks, celery or fennel can stand in, though they'll change the flavor profile slightly.

This pie reheats beautifully—just cover with foil and bake at 375°F for 15-20 minutes until bubbly. Leftovers keep 3-4 days in the fridge, though I rarely have any. The filling freezes well for up to 3 months, but the topping is best made fresh. For make-ahead prep, assemble the pie (without baking) and refrigerate overnight—it tastes even better the next day. Serve with a crisp green salad or steamed veggies to cut through the richness.

❤️

Why You'll Love This Recipe

  • One-Pot Magic: I swear by this recipe when I’m too tired to scrub three bowls. The fish poaches in its own juices while the potatoes soften in the same pot—no extra dishes, just rich flavors melting together.
  • Creamy Crisp Contrast: That golden crust on top? Pure magic. The leeks add a subtle sweetness, the heavy cream makes it velvety, and the flaky fish fillets underneath—honestly, it’s the kind of dish that makes you pause mid-bite.
  • Leftovers That Don’t Suffer: Fish pie actually tastes better the next day. The flavors deepen, the crust firms up, and it reheats like a dream. I’ve fed this to picky eaters, date nights, and lazy Sundays—no one ever complains.
  • Budget-Friendly Luxury: Fresh white fish might sound fancy, but it’s cheaper than chicken here, and potatoes stretch it into a full meal. I’ll be real: it’s the kind of dish that makes a $15 dinner feel like a $50 splurge.

Step-by-step instructions for traditional fish pie recipe

Here's how to build a restaurant-worthy fish pie with layers of flaky potato topping and rich, savory filling.

1

Prepare the Potato Topping

Peel the 2 lbs russet potatoes and cut them into even ½-inch thick slices. I like to use a mandoline for consistency, but a sharp knife works too if you're careful. Soak the slices in cold water for 10 minutes to remove excess starch—this helps create that perfect crispy texture on top.

Drain well and pat completely dry with paper towels. In a large bowl, combine the potato slices with 1 tbsp lemon juice, 1 tsp salt, and 0.25 tsp ground black pepper. Toss gently to coat. This acidity helps tenderize the potatoes while adding brightness to the finished dish.

2

Make the Savory Fish Filling

In a large skillet, melt 2 tbsp salted butter over medium heat. Add the 2 whole shallots and 4 cloves garlic (minced) and cook for 3-4 minutes until soft and fragrant. You'll know they're ready when the shallots turn translucent and the garlic releases its aroma.

Add the 1.5 lb fresh white fish fillets and cook for 3-4 minutes per side until they turn opaque and flake easily with a fork. Remove the fish and set aside. In the same pan, sprinkle 1 tbsp all-purpose flour over the shallot-garlic mixture and stir for 1 minute to remove any raw flour taste.

3

Create the Creamy Sauce

Pour in the 1 cup heavy cream and 0.5 cup whole milk, stirring constantly until the sauce thickens slightly. Return the cooked fish to the pan along with 0.25 cup chopped fresh dill and 0.125 cup chopped fresh parsley. Simmer gently for 3-4 minutes until everything is heated through and the flavors meld.

Taste and adjust seasoning with additional salt and pepper if needed. The sauce should be rich but not overly thick—it should coat the back of a spoon but still be pourable. Remove from heat and let cool slightly while you prepare the potato topping.

4

Assemble and Bake the Pie

Preheat your oven to 400°F. In a 9x13-inch baking dish, spread the potato slices in a single layer, overlapping slightly if needed to cover the bottom completely. Melt 0.5 cup unsalted butter and brush it evenly over the potato layer—this creates that signature crispy, golden crust.

Spoon the fish filling evenly over the potatoes, spreading it out to create a thin, even layer. Top with another layer of potato slices, again brushing with the remaining melted butter. The butter helps create steam during baking, which is key for that flaky texture.

5

Bake to Golden Perfection

Bake uncovered for 40-45 minutes until the top is golden brown and the potatoes are tender when tested with a fork. I like to check at the 35-minute mark—if the edges are browning too quickly, tent with foil to prevent burning.

Let the pie rest for 10 minutes before serving. This resting time allows the filling to set slightly and makes it easier to slice. The result should be a flaky, golden potato crust with a creamy, savory fish filling that melts in your mouth.

👨‍🍳

Pro Tips For Making Traditional Fish Pie

  • PREHEAT THAT CREAM: Don’t just toss cold heavy cream and milk into your sauce—warm it first over low heat until it’s just steaming, not boiling. I used to skip this, and the sauce would curdle like a science experiment gone wrong. A few minutes with the pot off the heat, stirring occasionally, keeps everything smooth and velvety.
  • PEEL THOSE POTATOES THIN: Russets with thick skins won’t crisp properly under the fish topping. Use a peeler to shave them down to about ¼-inch thickness—yes, it’s tedious, but it guarantees that golden, fluffy base. If you’re lazy (like me sometimes), at least score the skins in a crosshatch to help them break down evenly.
  • DON’T OVERCOOK THE FISH: Poach the fillets just until they’re just opaque—about 3-4 minutes max. Overcook them, and they’ll turn rubbery faster than you can say “second layer of cream.” Keep the poaching liquid simmering gently, not rolling, and use a thermometer if you’re unsure. Flake it right into the sauce while it’s still warm.
  • SAVE TIME WITH PARBOILED LEEKS: Slice the leeks into ¼-inch rounds, then parboil them for 3 minutes before adding to the cream sauce. This softens them faster and cuts down on cooking time later—no more waiting for them to turn to mush while the potatoes bake. Drain well, or your sauce will turn into a watery soup.

Perfect pairings for this recipe

Creamy Side Pairings

Serve your fish pie alongside a simple green salad with a light lemon-dill dressing—the acidity cuts through the richness beautifully.

Toss 4 cups mixed greens (spinach, arugula, and romaine) with 2 tbsp olive oil, 1 tbsp fresh lemon juice, 1 tsp honey, and 1 tbsp chopped fresh dill. The crisp texture and bright flavors balance the dish perfectly. 🥗

Crusty Bread Options

For a heartier meal, offer warm crusty bread or sourdough on the side. I love using a baguette or Irish soda bread—both pair wonderfully with the creamy filling.

Brush the bread with garlic butter (mix 2 tbsp softened butter with 1 minced garlic clove) and toast until golden. The bread soaks up any extra sauce beautifully.

Vegetable Companions

Steamed haricots verts or asparagus add a fresh, vibrant contrast to the dish. Toss them with 1 tbsp melted butter and a pinch of salt after steaming. For a more substantial side, try buttered peas—their sweetness complements the savory fish filling. Both options keep the meal light and balanced.

Wine Pairings

A crisp Chardonnay or Sauvignon Blanc elevates the flavors of this traditional dish. I recommend a cool-climate Chardonnay from regions like Burgundy or New Zealand—its citrus notes and slight acidity mirror the lemon in the pie.

For a lighter option, a dry Riesling adds a refreshing contrast to the richness. 🍷

Beer Recommendations

If you prefer beer, a pilsner or wheat beer works wonderfully. The crisp, clean flavors of a German pilsner like Warsteiner or a Belgian witbier like Hoegaarden complement the dish without overpowering it. For a darker option, a light lager with subtle malt notes adds depth. 🍺

Dessert Finishes

End the meal with something light and refreshing, like lemon posset or strawberry shortcake. The bright, citrusy notes of the posset cleanse the palate after the savory pie.

For a classic British touch, serve Eton mess—a mix of crushed meringue, whipped cream, and fresh berries—with a sprinkle of raspberries for color and tartness. 🍓

Nutrition facts

Servings 4
Amount Per Serving
Calories 580kcal
% Daily Value *
Total Fat 38g49%
Saturated Fat 24g120%
Cholesterol 120mg40%
Sodium 1250mg54%
Total Carbohydrate 32g11%
Dietary Fiber 4g14%
Sugars 4g
Protein 36g72%
* Percent Daily Values are based on a 2,000 calorie diet. Your daily values may be higher or lower depending on your calorie needs.

Frequently asked questions

1

Can I substitute other types of fish in this recipe?

While haddock or cod are traditional choices, you can use pollock, halibut, or even mixed white fish for variety. Avoid oily fish like salmon or mackerel—they can make the filling too rich. Just ensure the fish stays firm and flaky when cooked.

2

Why does my potato topping turn soggy instead of flaky?

Soggy topping usually means too much moisture. Always pat potato slices completely dry after soaking, and avoid overfilling the dish—leave ½-inch headspace for steam to escape. Also, brush with melted butter (not oil) before baking for crispiness.

3

How can I make this recipe gluten-free?

Replace the 1 tbsp all-purpose flour in the sauce with 1 tbsp cornstarch or gluten-free flour blend. For extra richness, stir in 1 tbsp crème fraîche into the filling. The potato topping stays gluten-free as long as you avoid buttery breadcrumbs (if using).

4

Can I prep this pie ahead of time?

Yes! Assemble the pie (without baking) up to 24 hours ahead and refrigerate. Bake straight from the fridge, adding 5-10 minutes to the cooking time. For best results, let it rest 10 minutes before serving. The flavors deepen overnight!

5

What’s the best way to reheat leftovers?

Cover the pie with foil and reheat at 375°F for 15-20 minutes until bubbly. Avoid microwaving—it makes the topping rubbery. For extra crispiness, broil for 2-3 minutes at the end. Leftovers keep 3-4 days in the fridge.

★★★★★5.0(2 reviews)
Categories Desserts