The Jamie Oliver Fish Casserole is a warm, creamy hug in a dish—perfect for chilly evenings or family dinners when you want something hearty and nourishing. It layers tender white fish with fluffy mashed potatoes, fresh baby spinach, and a velvety mustard and cheese sauce that’s packed with flavor. I made it on a rainy Sunday, and honestly, I didn’t expect it to be so rich and comforting. (inspired by Jamie Oliver)
Ingredients Needed
For the Casserole:
- 1 lb (450g) haddock or cod fillet, skin off, pin-boned, from sustainable sources
- 5 large (about 1.1 kg) potatoes, peeled and diced
- 2 large free-range eggs
- 2 large handfuls (about 3.5 oz / 100g) baby spinach
- 1 onion, finely chopped
- 1 carrot, peeled and finely chopped
- 2 tablespoons olive oil
For the Creamy Sauce:
- 1 cup (250 ml) double cream
- 3.5 oz (100g) mature Cheddar or Parmesan cheese, grated
- 1 lemon, juiced
- 1 heaped teaspoon English mustard
- 1 large handful (about 1 oz / 30g) fresh flat-leaf parsley, chopped
- Sea salt and black pepper, to taste
- 1 whole nutmeg, for grating (optional)
How To Make Jamie Oliver Fish Casserole
Prep the Potatoes and Eggs:
Start by preheating your oven to 180°C/350°F/gas 4. Dice the potatoes into chunks and boil in salted water for 2 minutes, then gently add the eggs and continue boiling for 8 more minutes. This way, the potatoes finish cooking as the eggs hard-boil.
Steam the Spinach:
Place the spinach in a steamer above the boiling pan. Let it wilt while everything cooks. Then, take it out and squeeze out as much water as you can—it should feel dry to the touch.
Cool and Prep:
Drain the potatoes and set them aside. Run cold water over the eggs, peel them, then quarter them. You’ll use these for layering later.
Sauté the Veggies:
In another pan, heat olive oil and gently fry the chopped onion and carrot for about 5 minutes until soft. Pour in the double cream and bring just to a boil, then remove from the heat.
Make the Sauce:
Stir in the grated cheese while the cream is still hot. Add the lemon juice, mustard, and chopped parsley. This turns into the most beautiful, cheesy, tangy sauce.
Assemble the Casserole:
Slice the fish into strips and layer it into a baking dish with the spinach and quartered eggs. Pour the sauce over everything, making sure it seeps through all the layers.
Mash and Top:
Mash the cooked potatoes with olive oil, sea salt, pepper, and a touch of nutmeg. Spread this mash evenly over the top of the fish mix.
Bake to Perfection:
Pop the dish into the oven and bake for 25 to 30 minutes. You’ll know it’s ready when the top is golden and slightly crisp.
Serve:
Dish it up with peas or greens. It’s a complete, comforting meal that makes everyone happy.

Why I Love This Recipe
I made this one Sunday when I wanted something easy but delicious, and it totally hit the spot. It’s got all the elements of comfort food but still feels nourishing and balanced. My kids went back for seconds (which never happens with fish!), and I love how adaptable it is depending on what’s in the fridge.
Recipe Tips
- Use Fresh Fish: It makes a huge difference in texture and flavor.
- Steam, Then Squeeze Spinach: This keeps your casserole from going watery.
- Season the Mash Well: Nutmeg is optional, but it adds depth.
- Try Parmesan: It gives a sharper edge than Cheddar.
- Make Ahead: Assemble and chill until you’re ready to bake.
How To Store This Jamie Oliver Fish Casserole
At Room Temperature
Don’t leave it out for more than 2 hours—fish and cream don’t hold well.
In the Fridge
Store in an airtight container for up to 3 days.
In the Freezer
Freeze the baked casserole in portions. It lasts well up to 2 months. Thaw in the fridge overnight before reheating.
Reheating
Cover with foil and reheat in the oven at 180°C/350°F for 20-25 minutes. Or microwave on medium for 3-4 minutes until hot through.
Nutrition Facts (per serving)
- Calories: 539
- Carbs: 45.7g
- Protein: 23.3g
- Fat: 30.4g
- Sugar: 6.1g
- Fibre: 5.4g
- Sodium: 0.6g
Let’s Answer a Few Questions!
Can I use frozen fish?
Totally! Just thaw it fully and pat dry before using to avoid extra moisture.
Can I leave out the mustard?
Sure. The sauce will still be creamy and tasty, just a bit milder.
Is there a dairy-free option?
You can swap the cream for a plant-based one and use vegan cheese.
What sides go well with this?
I love it with steamed broccoli or a crunchy green salad.
Can I prep this in advance?
Yes! Assemble it all, cover, and refrigerate up to a day before baking.
Try More Recipes:
Jamie Oliver Fish Casserole
Course: DinnerCuisine: British6
servings25
minutes45
minutes539
kcalA comforting, creamy fish casserole with mashed potatoes, spinach, and a rich cheese sauce. Perfect for family dinners.
Ingredients
1 lb (450g) haddock or cod fillet
5 large potatoes
2 large eggs
3.5 oz baby spinach
1 onion, 1 carrot
2 tbsp olive oil
1 cup double cream
3.5 oz cheese
1 lemon
1 tsp English mustard
1 oz parsley
Salt, pepper, nutmeg
Directions
- Preheat oven to 180°C/350°F/gas 4.
- Boil potatoes for 2 mins, add eggs, cook 8 more mins.
- Steam spinach, squeeze out moisture.
- Drain potatoes, peel and quarter eggs.
- Fry onion and carrot in oil. Add cream, then cheese, lemon, mustard, parsley.
- Layer fish, spinach, eggs in dish. Pour over sauce.
- Mash potatoes with seasoning and nutmeg. Spread on top.
- Bake 25-30 mins until golden. Serve hot.