Desserts
This basic fish pie recipe delivers the ultimate comfort food experience—a tender fish filling blanketed under a golden, fluffy mashed potato topping that feels like a hug in dish form.
The secret lies in balancing rich, savory fish with velvety mashed potatoes, creating a dish that’s both nostalgic and surprisingly modern. I’ve perfected this version over years of testing, ensuring the filling stays moist while the topping achieves that coveted crispy edge without drying out.
The process is straightforward but requires attention to detail: poaching delicate white fish until just tender, crafting a creamy sauce with a touch of wine or lemon for brightness, and achieving the perfect mashed potato consistency—light enough to puff up beautifully yet sturdy enough to hold its shape.
What sets this recipe apart is its versatility; you can customize the filling with herbs, cheese, or a splash of cream to suit your taste, while the topping remains the star—a cloud-like layer that’s impossible to resist.
By the time you pull this pie from the oven, your kitchen will smell like home, and every bite will deliver that perfect harmony of tender fish, rich sauce, and airy mashed potatoes.
The contrast between the creamy filling and crispy topping makes it a standout dish for family dinners or cozy weeknight meals. Ready to master this classic? Let’s get started.
This recipe works with haddock, salmon, or cod, and the leftovers reheat beautifully—making it ideal for meal prep. The key to success lies in precise timing and temperature control, ensuring the filling stays warm while the topping achieves that golden perfection.
Whether you’re serving it as a main course or pairing it with a simple salad, this fish pie is a crowd-pleaser that feels both comforting and refined.
Ingredients for basic fish pie
Eight ingredients for the filling, seven for the topping—simple, cozy, and totally satisfying.
| Ingredient | Amount | Notes |
|---|---|---|
| White Fish Fillets 🐟 | 1 ½ lb | Haddock, salmon, or cod preferred |
| All-Purpose Flour 🌾 | ¼ cup | For dredging fish fillets |
| Unsalted Butter 🧈 | ½ cup | Full-fat for best flavor |
| Heavy Cream 🥛 | 1 cup | Full-fat for creaminess |
| Milk 🥛 | ½ cup | Whole milk preferred |
| Russet Potatoes 🥔 | 2 lb | Starchy variety for fluffiness |
| Garlic Cloves 🧄 | 4 cloves | Minced for filling |
| Shallots 🧅 | 2 whole | Minced for depth of flavor |
| Dry White Wine 🍷 | ½ cup | Sauvignon Blanc works great |
| Lemon Juice 🍋 | 2 tbsp | Freshly squeezed |
| Fresh Parsley 🌿 | ¼ cup | Chopped for garnish |
| Salt 🧂 | 1 ½ tsp | Kosher salt preferred |
| Ground Black Pepper 🌶️ | ½ tsp | Freshly ground |
| Grated Parmesan Cheese 🧀 | ¼ cup | Freshly grated from block |
| Breadcrumbs 🍞 | ½ cup | Panko for extra crunch |
The fish is your star, so don’t skimp. Wild-caught salmon or fresh cod from the seafood counter at Whole Foods or your local fishmonger will give you the best texture. If you're using frozen, thaw it overnight in the fridge—never in hot water. The butter and cream? Store-brand is fine, but if you’ve got Plugrá butter or Organic Valley cream, treat yourself. Those little upgrades make the pie taste like you slaved over it (even if you didn’t). For the potatoes, Yukon Golds work too, but Russets give that classic fluffiness—peel and cube them while they’re still cold for even cooking.
No white wine? Fish or chicken stock with a splash of lemon juice works perfectly—just add a pinch of sugar to balance the acidity. Short on parsley? Fresh dill or chives add a nice twist. The breadcrumbs can be swapped for crushed cornflakes if you’re out, but trust me, panko makes all the difference. For the filling, if you’re worried about the fish drying out, poach it just until opaque—about 8-10 minutes max. And if you’ve got fresh herbs like tarragon or thyme, toss a sprig into the filling for an extra layer of flavor. The Parmesan? Skip it if you’re dairy-free, but the dish still sings without it.
This pie is a leftovers legend—tastes even better the next day once all the flavors meld. Store it covered in the fridge for up to 3 days, or freeze portions for 2 months. To reheat, cover with foil and warm at 350°F for 15 minutes. Pro move: assemble the pie ahead of time, refrigerate overnight, and bake straight from the fridge—the topping gets extra crispy. And if you’ve got extra mashed potatoes? Turn them into potato pancakes—zero waste, all flavor.
Why You'll Love This Recipe
- Pantry-Friendly Magic: I swear by this one when my fridge is half-empty. Flour, butter, milk—stuff I always have—and suddenly, dinner’s saved. The fish fillets cook in minutes, then disappear into a creamy sauce that feels indulgent but costs less than takeout.
- Creamy Crisp Perfection: That golden crust on top? It’s all about the butter and flour mix—crisp enough to crack, creamy enough to melt in your mouth. The heavy cream makes it rich without tasting heavy, and honestly? It’s the kind of comfort food that makes you slow down.
- Leftovers That Beg: Between us, this pie tastes even better the second day. I’ll make a big batch, freeze half, and pull it out for lazy lunches or when guests drop by. The texture holds up, and no one ever guesses it’s "basic"—they just ask for seconds.
- Weeknight Workhorse: No chopping, no fancy techniques—just pan, bake, done. The fish stays tender while the topping browns, and I’m out of the kitchen before the kids start asking, "What’s for dinner?" (Yes, even on a Tuesday night.)
Step-by-step instructions for fluffy fish pie perfection
Here's how to create a golden, bubbly fish pie with tender fish and velvety mashed potatoes.
Prepare the Fish Filling with Rich Flavors
Preheat your oven to 375°F. In a large oven-safe skillet, melt 0.25 cup unsalted butter over medium heat. Add the 2 minced shallots and 4 minced garlic cloves, cooking for 3-4 minutes until soft and fragrant. Pour in the 0.5 cup dry white wine and let it reduce by half, about 2 minutes.
Pat the 1.5 lb white fish fillets completely dry with paper towels, then season both sides with 0.75 tsp salt and 0.25 tsp ground black pepper. Dredge lightly in 0.25 cup all-purpose flour, shaking off any excess. Add the fish to the skillet and cook for 3-4 minutes per side until golden brown and just opaque in the center. Remove the fish and set aside.
Stir in the 1 cup heavy cream and 0.5 cup milk, then add the 2 tbsp lemon juice and 0.25 cup grated parmesan cheese. Bring to a gentle simmer and cook for 2-3 minutes until slightly thickened. Return the fish to the skillet and spoon the sauce over it, coating completely.
Create Ultra-Smooth Mashed Potatoes
While the fish cooks, peel and cube the 2 lb russet potatoes, cutting them into even 1-inch pieces. Place them in a pot of cold, salted water (add 0.75 tsp salt) and bring to a boil. Reduce heat and simmer for 15-20 minutes until fork-tender.
Drain the potatoes thoroughly, then return them to the pot. Add the 0.25 cup unsalted butter and 0.25 cup milk saved from the fish filling. Mash until completely smooth, then fold in the remaining 0.25 cup milk and 0.25 tsp ground black pepper for a light, airy texture. Cover to keep warm.
For extra fluffiness, I like to press the mashed potatoes through a ricer or potato masher to eliminate lumps. The goal is silky-smooth potatoes that create that perfect cloud-like topping.
Assemble and Bake to Golden Perfection
Spread the mashed potatoes evenly over the fish filling, creating a smooth, even layer. Sprinkle the 0.5 cup breadcrumbs evenly over the top for a crispy crust. Bake for 20-25 minutes until the top is golden brown and the edges are bubbling.
Here's the thing—don't overbake. You want the fish to stay tender and moist, not dry. The pie is done when the mashed potatoes are set but still slightly jiggly in the center. If the top browns too quickly, tent loosely with foil for the last 5 minutes.
Let the pie rest for 5-10 minutes before serving. This allows the filling to set slightly and makes it easier to slice. Garnish with chopped 0.25 cup fresh parsley for a pop of color and freshness.
Serve with Confidence and Enjoy
Slice through the center of the pie with a sharp knife, cutting all the way through both layers. The fish should be tender and flaky, the mashed potatoes creamy and smooth, and the breadcrumb topping should be crispy on top but soft underneath.
Serve immediately with a simple green salad or steamed vegetables. The contrast of the warm, creamy pie with cool, crisp greens makes this dish even more satisfying. Each bite should deliver rich, savory fish filling and velvety potatoes in perfect harmony.
Pro Tips For Making Basic Fish Pie
- Poach Fish Low & Slow: DESCRIPTION: Skip the high-heat sear—fish pie isn’t about crispy skin, it’s about tender, flaky layers. Simmer your fillets in the milk-heavy cream mix (just cover the pan) at a bare simmer for 3-4 minutes max, then gently fold them into the sauce. Overcooking turns fish to rubber; undercooking leaves it dry. Trust the timer, not the eye.
- Whisk the Sauce Hot: DESCRIPTION: I used to make the béchamel cold, and it always looked lumpy. Heat your milk and cream together until steaming, then whisk in the butter and flour off the heat—but keep it warm while you stir. The residual heat melts the butter faster and prevents clumps. Cold ingredients = sad, gloppy sauce.
- Salt the Fish Twice: DESCRIPTION: Season the fillets before poaching, but don’t stop there. Sprinkle a pinch of salt directly into the warm cream-milk mix when you fold in the fish. The sauce absorbs flavor better this way, and you won’t end up with bland fish hiding under a salty crust. (Yes, even if you’re using unsalted butter.)
- Bake Until Golden, Not Dry: DESCRIPTION: The crust’s job is to trap steam, not turn into a brick. Bake your pie at 375°F (190°C) until the top is deep golden—about 20-25 minutes—then cover loosely with foil if it browns too fast. A toothpick should come out clean, but the center should still be slightly jiggly. Overbaking = tragedy.
Serving suggestions for leftovers
Classic Pairings
Serve this fish pie with a simple arugula salad dressed in lemon vinaigrette—the peppery bite cuts through the richness beautifully. I toss 4 cups baby arugula with 2 tbsp extra-virgin olive oil, 1 tbsp fresh lemon juice, and a pinch of flaky sea salt.
For a heartier option, pair with steamed green beans tossed in garlic butter and toasted almond slices. 🥗
Bread Side Options
A warm, crusty baguette or sourdough loaf is perfect for soaking up any extra sauce. I recommend toasting slices and rubbing them with a garlic clove before serving.
For a lighter option, try crusty dinner rolls with herb butter—just mix ½ cup softened butter with 1 tbsp chopped parsley and a pinch of lemon zest.
Wine Recommendations
A crisp Sauvignon Blanc from New Zealand or a Chardonnay with light oak complements the fish perfectly. I love Cloudy Bay Sauvignon Blanc—its citrus notes brighten the dish.
For red wine lovers, a Pinot Noir with bright acidity works surprisingly well. Avoid heavy, tannic reds that could overpower the delicate flavors. 🍷
Garnish Ideas
Finish your fish pie with a sprinkle of fresh parsley or chives for a pop of color. A drizzle of hot honey adds a sweet-spicy contrast, while crumbled feta cheese brings a briny tang. For extra flair, top with toasted breadcrumbs mixed with smoked paprika for a smoky finish. 🌿
Family-Style Serving
This pie is perfect for sharing! Serve it in the center of the table with individual bowls of tartar sauce or remoulade for dipping. I also love adding pickled vegetables like cucumber or red onion to the table for a refreshing contrast.
The combination of warm pie, cool pickles, and creamy sauce makes every bite feel like a celebration. 🎉
Leftovers Reinvented
Transform leftover fish pie into fish pie croquettes by mixing crumbled pie with mayonnaise, shaping into balls, and breading with panko. Fry until golden for a crispy, satisfying snack.
Another idea: layer leftover filling in a pie dish, top with mashed potatoes, and bake until bubbly for a quick second serving. 💡
Nutrition facts
Frequently asked questions
Can I use frozen fish for this recipe?
Yes, but thaw it properly first! Place frozen fish fillets in the refrigerator overnight (about 12-24 hours) for even cooking. Never thaw at room temperature, as this can promote bacterial growth. Pat the fillets completely dry before cooking to ensure a crispy crust.
How do I prevent the mashed potatoes from getting gluey?
Use starchy russet potatoes and drain them thoroughly after boiling. For extra fluffiness, mash with hot milk (not boiling) and avoid overworking the potatoes. Pressing them through a ricer creates a silky texture that resists clumping.
What if I don't have white wine?
No problem! Substitute with fish stock plus 1 tbsp lemon juice and a pinch of sugar to balance acidity. For a non-alcoholic option, use apple cider vinegar mixed with water (1:3 ratio) and a touch of honey. The flavor will be slightly different but still delicious.
Can I make this ahead of time?
Assemble the pie up to 24 hours ahead and refrigerate uncovered. This helps the topping get extra crispy when baked. For best results, bake straight from the fridge (add 5-10 extra minutes to baking time). Leftovers keep well in the fridge for 3 days or freeze for 2 months.
What's the secret to a crispy topping?
The key is using panko breadcrumbs and baking at 375°F. Spread the mashed potatoes evenly and sprinkle breadcrumbs generously. For extra crunch, broil for 1-2 minutes at the end (watch closely to avoid burning). A light spray of oil on the breadcrumbs before baking also helps!
