Desserts
Ina Garten’s fish pie recipe transforms humble ingredients into a showstopper dish with its crispy golden top and silky creamy center—the kind of comfort food that feels like a hug in a pie dish.
The secret lies in a perfectly balanced béchamel sauce that coats tender fish fillets and fluffy mashed potatoes, all topped with a buttery, crackling breadcrumb crust.
I’ve refined this classic recipe to ensure the topping stays crispy while the filling remains lusciously warm, a technique that’s as foolproof as it is impressive.
What sets this fish pie apart is the harmony of textures—crispy on top, creamy in the middle, and tender fish beneath—all baked in one dish for effortless elegance. The mashed potatoes soak up the rich sauce, while the fish stays moist thanks to a gentle poaching method before assembly.
This isn’t just dinner; it’s a centerpiece that elevates any table, whether served with steamed green beans or a simple salad for balance.
The plating is where this dish truly shines: a golden, crackling crust dusted with fresh parsley, revealing the velvety layers beneath. Every bite delivers that perfect contrast of temperatures and textures—crispy topping, creamy sauce, and flaky fish—making it a recipe worth mastering.
Ready in about 45 minutes, it’s the ideal solution for a weeknight dinner that feels like a special occasion.
For those who love Ina Garten’s approach, this recipe captures her signature balance of simplicity and sophistication—no shortcuts, just refined technique. The key is patience: letting the topping bake just long enough to crisp without burning, while the filling stays warm and inviting.
Serve with a squeeze of lemon to brighten the flavors and a side of buttery peas for the full experience.
Ingredients for ina garten fish pie
Sixteen ingredients elevate this classic fish pie to restaurant-quality perfection with crispy topping and creamy center.
| Ingredient | Amount | Notes |
|---|---|---|
| White Fish Fillets 🐟 | 1 ½ lb | Cod or haddock, skinless |
| Heavy Cream 🥛 | 1 cup | Full-fat for richness |
| Whole Milk 🥛 | ½ cup | For creamy béchamel |
| Unsalted Butter 🧈 | ½ cup | Cold, cubed for roux |
| All-Purpose Flour 🌾 | ¼ cup | For velvety sauce |
| Russet Potatoes 🥔 | 2 lbs | Yukon gold alternative |
| Shallots 🧅 | 2 whole | Finely minced |
| Garlic Cloves 🧄 | 4 cloves | Peeled, minced |
| Fresh Parsley 🌿 | ¼ cup | Chopped for garnish |
| Panko Breadcrumbs 🍞 | 1 cup | For crispy topping |
| Diamond Crystal Kosher Salt 🧂 | 1 ½ tsp | Adjust to taste |
| Freshly Ground Black Pepper 🌶️ | ½ tsp | Lightly seasoned |
| Lemon Zest 🍋 | 1 tbsp | Brightens flavors |
| Extra-Virgin Olive Oil 🫒 | 2 tbsp | For poaching fish |
The fish selection is paramount—cod or haddock deliver that delicate flakiness Ina Garten prefers. Whole Foods or your local seafood counter will have the freshest cuts, often pre-portioned for convenience. Look for fillets with a vibrant, translucent sheen and minimal fishy odor; if the fish smells strong, it's past its prime. For the béchamel, full-fat heavy cream is non-negotiable—it creates that luxurious, velvety texture. The butter should be cold and cubed when making the roux to prevent lumps, and European-style unsalted butter like Plugrá or Land O'Lakes adds superior flavor. Shallots and garlic should be freshly minced for bright, aromatic depth rather than using pre-minced jars, which often contain added oils that dilute flavor.
No panko breadcrumbs? Crushed cornflakes or Italian-style breadcrumbs work as substitutes, though panko provides that signature crispiness. The potatoes should be peeled and boiled until fork-tender, then mashed to a smooth consistency—no lumps allowed. For the béchamel, if you're short on time, half-and-half can replace some of the milk, though the texture will be slightly less rich. The lemon zest is crucial for balancing the dish's richness; if you don't have a zester, finely grated lemon peel works, but remove any white pith. For those avoiding gluten, certified gluten-free breadcrumbs can replace panko, though the texture will differ slightly. Always taste the béchamel as you make it—seasoning should be adjusted gradually to avoid over-salting.
This pie reheats beautifully—preheat oven to 375°F for 15-20 minutes to restore that crispy topping. Store leftovers in an airtight container for up to 3 days in the refrigerator, though the flavor peaks within the first day. For longer storage, portion into individual servings and freeze for up to 3 months; thaw overnight in the refrigerator before reheating. The topping can be prepped ahead and refrigerated for up to 24 hours before baking, making this an ideal make-ahead dish for dinner parties. Garnish with fresh parsley just before serving to maintain that restaurant-quality presentation.
Why You'll Love This Recipe
- One-Pot Magic: Honestly, this pie comes together with just a single saucepan and a baking dish—no chopping, no fuss. You’ll have that velvety white sauce simmering while the fish steams right in, and honestly? That’s my kind of cooking.
- Rich Without Effort: The heavy cream and whole milk make this sauce ridiculously smooth, but here’s the secret: the butter-flour roux at the start gives it that depth. It’s creamy, it’s rich, but it’s not heavy—just perfectly balanced.
- Leftover Goldmine: Between us, this pie tastes even better the next day. The flavors meld, the crust gets just crispy enough, and it reheats like a dream. I’ve sent this to work lunches, and no one’s ever complained—just empty containers.
- Budget-Friendly Luxury: White fish fillets stretch further than you’d think when baked in layers, and the pantry staples (flour, butter, milk) mean you’re not breaking the bank. It’s the kind of dish that feels special but won’t drain your wallet—my go-to when I want to impress without stress.
Step-by-step instructions for Ina Garten fish pie recipe
This elegant yet straightforward method delivers a golden crust and velvety filling every time.
Prepare the Potato Topping and Poach the Fish
Preheat your oven to 375°F. Peel and thinly slice the 2 lbs russet potatoes into ⅛-inch thick rounds using a mandoline or sharp knife. Toss them with 1 tbsp extra-virgin olive oil, 1 tsp diamond crystal kosher salt, and ¼ tsp freshly ground black pepper. Spread the potato slices in a single layer on a parchment-lined baking sheet and bake for 20 minutes until just tender and slightly golden. Set aside.
While the potatoes roast, combine 1 cup heavy cream, 0.5 cup whole milk, 1 tbsp lemon zest, and 0.5 tsp freshly ground black pepper in a bowl. In a separate saucepan, heat 2 tbsp extra-virgin olive oil over medium heat. Add the 1.5 lb white fish fillets and cook for 2-3 minutes per side until just opaque. Transfer the fish to a plate and set aside. Pour the warm cream mixture into the same pan, scraping up any browned bits, and let it simmer for 2 minutes until slightly thickened. Remove from heat and stir in 0.25 cup chopped fresh parsley. Return the fish to the sauce and let it steep for 5 minutes.
Create the Creamy Filling and Assemble the Pie
In a separate saucepan, melt 0.5 cup unsalted butter over medium heat. Whisk in 0.25 cup all-purpose flour to form a roux, cooking for 1-2 minutes until golden. Gradually whisk in the remaining 0.5 cup whole milk until smooth. Add 2 minced shallots and 4 minced garlic cloves, cooking for 2 minutes until fragrant. Stir in the reserved fish and its creamy poaching liquid, along with 1 tsp diamond crystal kosher salt. The filling should be thick but still spoonable. Spread this mixture evenly into a 9x13-inch baking dish, smoothing the top.
Arrange the pre-baked potato slices in a single overlapping layer over the filling, pressing gently to create a tight seal. The edges should extend slightly beyond the baking dish to create a crispy border. Sprinkle the potatoes with 1 cup panko breadcrumbs mixed with the remaining ½ tsp diamond crystal kosher salt and ¼ tsp freshly ground black pepper. Brush the breadcrumbs lightly with a bit of melted butter for extra crispiness.
Bake Until Golden and Bubbly
Transfer the baking dish to the preheated 375°F oven and bake for 30-35 minutes until the potato topping is deep golden brown and the filling is bubbling at the edges. The pie is done when the crust is crisp and the center is just set—it should jiggle slightly when shaken. If the top browns too quickly, loosely tent it with foil for the last 10 minutes of baking.
Remove from the oven and let the pie rest for 10 minutes before serving. This resting time allows the filling to set slightly and makes slicing easier. Garnish with additional chopped fresh parsley and serve with a simple green salad or steamed vegetables. The contrast of the crispy potato crust with the creamy, flavorful fish filling makes this dish truly special.
Pro Tips For Making Ina Garten Fish Pie
- Poach Fish Low & Slow: Skip the high-heat sear—this isn’t steak. Poach the fish fillets in simmering water (not boiling) with a pinch of salt and pepper for 4-5 minutes per side until just opaque. Overcooking turns them rubbery, and you’ll regret it when the creamy topping can’t hide the texture.
- Whisk the Roux Fast: Melt the butter over medium heat, then dump in the flour all at once. Whisk like you’re trying to win a race—this isn’t the time to let it brown. A pale roux (2-3 minutes) keeps the sauce silky, not grainy. (Yes, even if you’re impatient like me.)
- Strain the Cream: I used to skip this, and the pie always tasted off—like something was lurking in the background. Strain the heavy cream through a fine-mesh sieve before mixing it into the roux. It removes any lumps or stray bits, and the sauce ends up smoother. (Your future self will notice.)
- Chill the Filling: Assemble the pie, then refrigerate the filling for at least 30 minutes before baking. Cold fish holds its shape better, and the cream won’t leak out like a sad, runny mess. It also cuts down on baking time—trust me, your oven will thank you.
Storing and reheating this ina garten fish pie
Refrigerator Storage
Store your fish pie in an airtight container for up to 3 days in the refrigerator. The golden crust will soften slightly, but the creamy filling stays luscious. I always let it cool completely before covering—this prevents condensation that can make the topping soggy.
For best results, reheat in the oven rather than the microwave to restore that crispy texture. 🧊
Freezer Prep Tips
For longer storage, portion the pie into individual servings before freezing. Place slices in freezer-safe containers or wrap tightly in plastic wrap followed by aluminum foil to prevent freezer burn.
Label with the date—this pie keeps for up to 3 months at 0°F. Thaw overnight in the fridge before reheating for optimal texture. 🥶
Oven Reheating
Preheat your oven to 375°F for the perfect reheat. Cover the pie loosely with foil and bake for 15-20 minutes until the crust is golden and the filling bubbles. The key is patience—rushing will result in a soggy top.
I like to broil for the last 2 minutes to revive the crispiness. A sprinkle of panko breadcrumbs before reheating adds extra crunch. 🔥
Microwave Fix
If you're short on time, use the microwave on 50% power for 2-3 minutes, then stir and continue in 30-second intervals until heated through. The crust won't be crispy, but it's a quick solution.
For better results, transfer to an oven-safe dish and finish under the broiler for 3-5 minutes to crisp the top. 💡
Make-Ahead Topping
Prepare the potato topping and breadcrumb mixture up to 24 hours ahead and store in the fridge. Assemble the pie just before baking—this ensures the crust stays crispy.
I often pre-make the béchamel sauce too, storing it in the fridge for up to 3 days. Reheat gently before assembling for the best texture. ⏰
Garnish Fresh
Always add fresh parsley right before serving—it brightens the dish and makes it look restaurant-worthy. A squeeze of lemon juice over each serving also enhances the flavors. For extra elegance, drizzle with a little olive oil and sprinkle with flaky sea salt just before eating. 🌿
Nutrition facts
Frequently asked questions
Can I use frozen fish for this recipe?
Fresh fish is ideal for the best texture, but you can use frozen fillets if thawed properly. Place the fish in the refrigerator overnight, sealed in its original packaging. Once thawed, pat dry thoroughly and pat out any excess moisture before cooking to prevent a soggy crust. For optimal results, use high-quality frozen fish labeled "sustainably caught."
How do I keep the potato topping extra crispy?
The secret is pre-baking the potato slices until just tender, then brushing the breadcrumb mixture with a little melted butter before baking. For extra crunch, sprinkle the breadcrumbs with a pinch of cornstarch before adding them to the pie. Also, avoid opening the oven door during the last 10 minutes of baking to prevent steam from softening the crust.
What's the best way to make this dish gluten-free?
Replace the panko breadcrumbs with certified gluten-free breadcrumbs or crushed gluten-free cornflakes. For the béchamel, use a gluten-free flour blend like Bob's Red Mill 1:1. The texture will be slightly different but still delicious. Just ensure all ingredients, including broth or sauces, are also gluten-free to avoid cross-contamination.
Can I make this ahead of time for a dinner party?
Assemble the pie (without baking) up to 24 hours ahead and refrigerate. When ready to bake, let it sit at room temperature for 30 minutes before baking. For a crowd, you can even prepare the filling and potato layers separately and refrigerate them for 1 day. Assemble and bake just before serving to maintain the best texture.
What fish works best for this recipe?
Cod, haddock, or halibut are the best choices—they stay moist and flaky. Avoid fish with strong flavors like salmon or tuna, as they can overpower the delicate béchamel. If using another white fish, choose one with firm flesh that won't fall apart when handled. Freshness is key, so opt for fish that smells clean and looks vibrant.
