Classic Fish Pie Recipe: Fluffy Potato Crown Over Creamy Fish Filling

Desserts

Classic Fish Pie Recipe: Fluffy Potato Crown Over Creamy Fish Filling

This classic fish pie recipe delivers all the comfort of a British pub dinner—creamy fish filling topped with a golden, fluffy potato crown that bakes to perfection.

The secret lies in using firm white fish like cod or haddock, simmered until just tender, then layered with velvety mashed potatoes and a rich, savory gravy.

I’ve perfected this method over years of testing, ensuring every bite delivers that ideal balance of tender fish, creamy sauce, and crispy potato topping.

The beauty of this recipe is its simplicity—just 10 ingredients and one pot for the filling, plus a classic mashed potato technique that guarantees a light, airy texture. The gravy binds everything together, while a final sprinkle of breadcrumbs before baking creates that signature golden crust.

It’s the kind of dish that transforms a weeknight into a cozy, restaurant-worthy meal without requiring advanced skills.

By the time it emerges from the oven, you’ll have a creamy, comforting fish pie with layers of flavor and texture—tender fish, rich gravy, and a potato topping that’s crisp on top and fluffy inside.

The aroma alone will have everyone gathering around the table, and the first bite delivers that satisfying mix of textures and flavors that makes it a true classic.

Serve with a simple green salad or steamed vegetables to balance the richness, and save leftovers for the next day—the flavors only deepen as it rests. Let’s get started on this timeless comfort dish that’s perfect for family dinners or special occasions.

👨‍🍳
Difficulty
Easy
🐟
Diet
Seafood
🔥
Calories
High Cal

Ingredients for classic fish pie

Ten essential ingredients transform into a comforting British classic—creamy fish filling and golden potato crown.

Ingredient Amount Notes
Cod Fillets 🐟 1 ½ lb Skinless, boneless, firm white fish
Haddock Fillets 🐟 1 ½ lb Skinless, boneless, substitute for cod
Russet Potatoes 🥔 2 lbs Large, starchy, peeled and cubed
Heavy Cream 🥛 1 cup Full-fat for rich texture
Whole Milk 🥛 ½ cup Warmed for creaminess
Unsalted Butter 🧈 4 tbsp Cold, cubed for mashed potatoes
All-Purpose Flour 🌾 1 tbsp For gravy thickening
Fish Stock 💧 1 ½ cups Homemade or high-quality store-bought
Fresh Parsley 🌿 ¼ cup Chopped, for garnish
Plain Breadcrumbs 🍞 ½ cup For golden potato topping
Salt 🧂 1 ½ tsp Kosher or sea salt
Black Pepper 🌶️ ½ tsp Freshly ground
Garlic Cloves 🧄 3 cloves Minced, for flavor base
Lemon Juice 🍋 1 tbsp Freshly squeezed

The fish is the heart of this dish, so cod or haddock are non-negotiable—they stay tender and flake beautifully. Look for fillets with a firm, translucent appearance and minimal fishy odor. Whole Foods or Trader Joe's carry excellent frozen options if fresh isn't available, but thaw them overnight in the fridge. The potatoes should be starchy (like Russets) for that perfect fluffy texture. Avoid waxy varieties like red potatoes—they won’t mash as smoothly. For the fish stock, homemade is ideal, but brands like Knorr or Pacific Foods offer reliable store-bought options. The heavy cream and milk should be full-fat to ensure a rich, velvety sauce that won’t separate.

No cod or haddock? Pollock or tilapia work in a pinch, but expect slightly less delicate texture. Substitute fish stock with chicken or vegetable stock in a 1:1 ratio, though the flavor will differ slightly. For a dairy-free option, use coconut cream instead of heavy cream, though the texture will be lighter. Fresh parsley is ideal, but dried parsley at one-third the amount works if needed. The breadcrumbs should be plain—avoid seasoned varieties, which can overpower the delicate flavors. If you’re short on time, panko works beautifully for an extra-crispy topping. The garlic and lemon juice are key for brightness, so don’t skip them—freshly minced garlic adds depth, while bottled lemon juice lacks the same tang.

This pie reheats beautifully—4-5 days in the fridge or 3 months frozen. For best results, cover tightly with foil before reheating to prevent drying. The potato topping can be prepped ahead and baked separately, then assembled with the filling just before serving. Store leftovers in airtight containers, and the flavors actually deepen overnight. If making ahead for a party, assemble the pie and refrigerate it overnight before baking—this allows the flavors to meld perfectly. The breadcrumb topping should be added just before baking to ensure maximum crispiness.

❤️

Why You'll Love This Recipe

  • One-Pan Wonder: I swear by this for lazy nights—just boil the potatoes, poach the fish, and toss it all in one dish. No chopping, no fussing, just layer and bake until golden.
  • Creamy Crisp Magic: That top layer of buttery mashed potatoes? It’s the star—crispy edges, fluffy center, and the fish underneath melts like a dream. The haddock and cod soak up the creamy milk sauce without falling apart.
  • Leftovers That Win: Honestly, I make this on Sundays because the leftovers are better the next day. The flavors meld, the potatoes soften just right, and it reheats like a hug from your grandma.
  • Budget-Friendly Luxury: Fish pie feels fancy but costs less than takeout. Cod and haddock stretch far, potatoes bulk it up, and a splash of heavy cream makes it taste like a restaurant dish. My wallet and my family thank me.

Step-by-step instructions for classic fish pie

Here's how to build a perfect fish pie with a golden potato crown and rich, creamy fish filling.

1

Prepare the Fish Filling

Preheat your oven to 375°F to warm it for baking later. In a large oven-safe skillet or baking dish, combine the 1.5 lb cod fillets and 1.5 lb haddock fillets. Cut the fish into 1-inch chunks for even cooking and better texture. Add the 3 cloves minced garlic, 1 tbsp lemon juice, and 0.5 tsp black pepper, then toss gently to coat the fish pieces.

Pour in the 1.5 cups fish stock and bring to a gentle simmer over medium heat. Let it cook for 5-7 minutes until the fish is just opaque and flakes easily with a fork. Remove from heat and stir in the 1 cup heavy cream and 0.5 cup whole milk. The mixture should be smooth but still slightly chunky. Taste and adjust seasoning with additional salt if needed—this is your flavor base.

2

Make the Creamy Mashed Potato Topping

While the fish filling simmers, peel and cube the 2 lbs russet potatoes into 1-inch pieces. Boil them in salted water for 12-15 minutes until fork-tender. Drain thoroughly, then return to the pot. Add the 4 tbsp unsalted butter and mash until smooth but still slightly textured. Stir in the 0.25 cup chopped fresh parsley and 1.5 tsp salt—this will infuse the potatoes with bright flavor.

For extra richness, warm the 0.5 cup whole milk slightly and mix it into the mashed potatoes. The heat helps emulsify the butter for a silky texture. Spread this mixture evenly over the fish filling in the skillet, creating a smooth, even layer. Press down gently with a spatula to ensure good contact between the layers.

3

Create the Golden Breadcrumb Topping

In a small bowl, combine the 0.5 cup plain breadcrumbs and 1 tbsp all-purpose flour. This mixture will create a crispy, golden crust that seals in moisture and adds texture. Sprinkle the breadcrumb-flour mixture evenly over the mashed potato layer, pressing down lightly to adhere. For extra flavor, sprinkle with a pinch of black pepper and salt.

Here's the key to the perfect finish: Drizzle the top with a thin layer of 1 tbsp melted butter (save a little from the 4 tbsp total) to encourage browning. The butter will help create a golden, crispy crust while keeping the interior moist. Place the skillet in the preheated oven and bake for 25-30 minutes until the topping is golden brown and the filling is bubbling.

4

Rest and Serve for Maximum Flavor

Remove the fish pie from the oven and let it rest for 10 minutes before serving. This resting period allows the filling to set slightly and the flavors to meld together. The pie will be hot and the crust will be crispy, but giving it time ensures the mashed potatoes stay creamy and the fish remains tender.

Garnish with additional chopped fresh parsley for a pop of color and freshness. Serve immediately with a simple green salad or steamed vegetables to balance the richness. The contrast of the crispy topping, creamy filling, and fluffy potatoes makes every bite satisfying. Store any leftovers in the refrigerator for up to 3 days or freeze for 1 month—they reheat beautifully!

👨‍🍳

Pro Tips For Making Classic Fish Pie

  • PARBOIL POTATOES FIRST: I learned this the hard way—skipping the parboil means your potato topping will either turn to glue or stay raw. Boil the Russets whole in salted water for 8-10 minutes until a knife slips in easily, then drain and let them dry. This guarantees a creamy, fluffy base instead of a sad, gummy mess.
  • DON’T OVERCOOK THE FISH: Cod and haddock cook faster than you think. Once the fillets are just opaque in the center (about 3-4 minutes in butter or oil), pull them out immediately—overcooking turns them rubbery. If you’re nervous, undercook slightly; they’ll finish in the oven while the pie bakes.
  • STIR CREAM BEFORE BAKE: The sauce looks thick when you mix it, but it thins out in the oven. Stir in 2-3 tablespoons of the fish’s cooking liquid (or reserved milk) before spreading it over the fish—this keeps the topping from drying out. If it’s still too thick after baking, a splash of warm milk fixes it.
  • USE COLD POTATOES FOR TOPPING: I was skeptical until I tried it: mash the parboiled potatoes cold (straight from the fridge) with butter, cream, and salt. The chilled potatoes absorb less liquid, so the topping stays light and crispy instead of turning into a dense, soggy lid. Yes, it’s an extra 10 minutes, but it’s worth it.

Serving suggestions for leftovers

Classic British Plating

Serve your fish pie on a large, rustic wooden board or vintage ceramic platter to capture that classic British pub vibe. I love using a 12-inch cast-iron skillet as both the baking dish and serving platter—it keeps everything warm and adds rustic charm.

Garnish with extra chopped parsley and a sprinkle of freshly cracked black pepper right before serving to elevate the presentation. 🍽️

Balancing Sides

A crisp green salad with a tangy vinaigrette cuts through the richness perfectly. Toss 4 cups mixed greens (like butter lettuce and arugula) with 2 tbsp Dijon mustard, 3 tbsp olive oil, and 1 tbsp apple cider vinegar.

For heartier sides, serve with steamed asparagus (tossed with lemon zest) or buttered peas—both complement the fish beautifully. 🥗

Bread Pairings

Warm, crusty bread is essential for soaking up the creamy sauce. I recommend a baguette sliced into ½-inch pieces and lightly toasted with garlic butter. For a more substantial option, serve with sourdough dinner rolls—their tangy flavor pairs wonderfully with the fish and potatoes. 🍞

Dessert Harmony

End the meal with something light to balance the richness. A classic sticky toffee pudding or lemon posset works beautifully—both offer bright, citrusy notes that refresh the palate. For a simpler option, serve shortbread cookies with a cup of Earl Grey tea to keep the British theme intact. 🍮

Make-Ahead Serving

If serving at a gathering, assemble the pie ahead and refrigerate it overnight before baking. This allows flavors to meld perfectly. For buffet-style serving, keep the pie warm in a 200°F oven while guests enjoy their sides.

Use a pie server to scoop neat portions—it makes the golden potato crown look especially impressive. 💡

Family-Style Presentation

For a cozy family dinner, serve the fish pie directly from the skillet at the center of the table. Use a large metal spatula to slice through the crispy crust and fluffy potatoes. Encourage everyone to help themselves—it’s the perfect way to share this comforting dish.

Pair with a crisp white wine like Sauvignon Blanc or a light pale ale for the ultimate British meal experience. 🍺

Nutrition facts

Servings 4
Amount Per Serving
Calories 680kcal
% Daily Value *
Total Fat 42g54%
Saturated Fat 26g130%
Cholesterol 185mg62%
Sodium 1250mg54%
Total Carbohydrate 52g18%
Dietary Fiber 6g21%
Sugars 6g
Protein 48g96%
* 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 use frozen fish instead of fresh for this recipe?

Thaw frozen cod or haddock overnight in the fridge—never at room temperature. For best results, pat the fish dry before cutting into chunks to prevent excess moisture in the filling. The texture will be just as tender when cooked properly.

2

How do I prevent the potato topping from becoming soggy?

The secret is baking the pie at 375°F until the crust is golden and crispy. Press the breadcrumb mixture firmly onto the potatoes before baking, and avoid opening the oven door during the last 15 minutes of cooking. A final drizzle of melted butter before baking also helps create a protective seal.

3

What's the best way to reheat leftovers?

Cover the pie with foil and reheat in a 350°F oven for 15-20 minutes until warmed through. For microwave reheating, cover with a damp paper towel and heat in 30-second intervals to avoid drying out the filling. The potato topping may lose some crispness but will still taste delicious.

4

Can I make this recipe dairy-free?

Yes! Replace the heavy cream with coconut cream and use unsweetened almond milk instead of whole milk for the mashed potatoes. For richness, stir in 2 tbsp vegan butter when mashing. The texture will be slightly lighter but still creamy and satisfying.

5

Why did my fish pie turn out dry?

Overcooking is the most common cause—fish should be just opaque (5-7 minutes) and not fully cooked through in the oven. Another issue could be insufficient liquid in the filling. If needed, add 1-2 tbsp extra fish stock before baking. Always let the pie rest for 10 minutes after baking to redistribute juices.

★★★★★5.0(12 reviews)
Categories Desserts