Getting a wholesome, fish dinner on the table during busy weeknights can feel like an uphill battle. Between after-school activities, homework help, and general evening chaos, finding time to prepare something both nutritious and tasty often seems out of reach – especially when you’re trying to convince the family to eat more seafood.
That’s where this halibut florentine comes to the rescue: it’s quick enough for weeknight cooking, packed with good-for-you ingredients like spinach, and so tasty that even seafood skeptics will ask for seconds.

Why You’ll Love This Halibut Florentine
- Quick dinner option – Ready in just 30-45 minutes, this elegant fish dish fits perfectly into your busy weeknight schedule.
- Restaurant-quality meal – The creamy sauce and three-cheese blend make this taste like something you’d order at a nice seafood restaurant, but at a fraction of the cost.
- Nutritious combination – You’re getting lean protein from the halibut and plenty of nutrients from the spinach, making this a well-balanced meal that’s good for you.
- Flexible recipe – While halibut works great, you can use any firm white fish you have on hand – cod, haddock, or even sea bass would work just as well.
What Kind of Halibut Should I Use?
Fresh Pacific halibut is ideal for this recipe, though you can also use frozen halibut that’s been properly thawed in the refrigerator overnight. When shopping, look for firm, translucent flesh without any brown spots or strong fishy smell – these are signs of freshness. While Pacific halibut tends to be more expensive than Atlantic, it’s often considered superior in taste and texture, with a clean, sweet flavor that works perfectly in this creamy dish. If you can’t find halibut, other firm white fish like cod or haddock will work as substitutes, though they might not be quite as meaty in texture.

Options for Substitutions
This fish dish is pretty adaptable – here’s what you can swap if needed:
- Halibut: While halibut makes this dish special, you can use any firm white fish like cod, haddock, or sea bass. Just adjust cooking time based on the thickness of your fish – thinner fillets will cook faster.
- Frozen spinach: Fresh spinach works great too! Just cook down about 1 pound of fresh spinach and squeeze out the excess water. You could also use frozen kale or Swiss chard as alternatives.
- Cheese blend: Feel free to play with the cheese combinations. Gruyere can replace mozzarella, and Romano works instead of parmesan. Just keep the total amount of cheese the same.
- Breadcrumbs: No breadcrumbs? Crushed crackers, panko, or even crushed pork rinds (for low-carb) work well for the topping.
- Old Bay seasoning: If you don’t have Old Bay, mix a pinch each of celery salt, paprika, and black pepper as a quick substitute.
- Milk: For a richer sauce, try half-and-half or light cream. For dairy-free options, unsweetened almond or cashew milk can work, though the sauce won’t be quite as creamy.
Watch Out for These Mistakes While Cooking
The biggest challenge when cooking halibut is preventing it from becoming dry and tough – this delicate fish can quickly overcook, so keep a close eye on it and remove it from the heat when it just turns opaque and flakes easily with a fork. A common error is not thoroughly draining the spinach, which can make your sauce watery and prevent it from properly coating the fish – take extra time to squeeze out all excess moisture using a clean kitchen towel or paper towels. The cream sauce can develop lumps if you add the milk too quickly to the butter-flour mixture, so whisk it in gradually while maintaining a steady temperature, and don’t skip seasoning each layer (fish, spinach, and sauce) separately to build proper flavor depth. For the best results, let the dish rest for 5 minutes after baking to allow the cheese to set slightly, making it easier to serve and ensuring the sauce stays with each portion.

What to Serve With Halibut Florentine?
This rich and cheesy fish dish pairs perfectly with simple sides that won’t compete with its creamy, savory flavors. A light lemon rice pilaf or buttered angel hair pasta makes an excellent base to soak up all that delicious sauce. For vegetables, try roasted asparagus or steamed broccoli – they’re simple enough to let the halibut shine but still add nice color to your plate. If you want to keep things light, a fresh green salad with a citrus vinaigrette helps cut through the richness of the dish and adds a nice pop of freshness to your meal.
Storage Instructions
Keep Fresh: After your Halibut Florentine has cooled down, place it in an airtight container and pop it in the fridge. It’ll stay good for up to 3 days. The creamy sauce might thicken a bit in the fridge, but don’t worry – that’s totally normal!
Freeze: While you can freeze this dish, the sauce might separate a bit when thawed. If you want to freeze it anyway, wrap it well in foil and place in a freezer-safe container for up to 2 months. Just keep in mind the texture of the fish might be slightly different after freezing.
Warm Up: To reheat your Halibut Florentine, cover it with foil and warm it in the oven at 325°F for about 15-20 minutes, or until heated through. Using the microwave works too, but heat it at 50% power in short bursts to keep the fish from getting tough. A quick sprinkle of fresh parmesan before reheating helps bring back that nice cheesy top!
| Preparation Time | 10-15 minutes |
| Cooking Time | 20-30 minutes |
| Total Time | 30-45 minutes |
| Level of Difficulty | Medium |
Estimated Nutrition
Estimated nutrition for the whole recipe (without optional ingredients):
- Calories: 1200-1400
- Protein: 90-100 g
- Fat: 80-90 g
- Carbohydrates: 45-55 g
Ingredients
For the fish:
- 1 lb firm white fish fillet (such as halibut or cod, about 1-inch thick)
- 10 oz frozen spinach (thawed and squeezed dry)
For the white sauce:
- 3 tbsp butter (I like Kerrygold unsalted butter for this)
- 1/4 cup Parmesan cheese (freshly grated is best)
- Salt to taste
- 1 cup milk (whole milk for a richer sauce)
- Pepper to taste
- 2 tbsp all-purpose flour
For the topping:
- 1 cup shredded mozzarella cheese
- 1/4 cup shredded cheddar cheese
- 1/4 cup dry breadcrumbs (Panko breadcrumbs for extra crunch)
- 1 tsp Old Bay seasoning
- 1/4 cup Parmesan cheese
Step 1: Prepare the White Sauce
Start by melting butter in a saucepan over medium heat.
Once the butter is fully melted, add flour and stir continuously to create a smooth paste.
Gradually add milk while stirring, and continue to cook until the mixture thickens into a white sauce.
Stir in 1/4 cup of Parmesan cheese and mix until it melts and the sauce becomes smooth.
Season the sauce with salt and pepper to taste.
Step 2: Assemble the Casserole
Place fresh spinach evenly across the bottom of a casserole dish, creating a bed for the fish.
Lay the fish fillet(s) on top of the spinach.
Pour the prepared white sauce evenly over the fish, ensuring that it is well covered.
Step 3: Prepare and Add the Topping
In a separate mixing bowl, combine Mozzarella cheese, an additional 1/4 cup of Parmesan cheese, cheddar cheese, bread crumbs, and a sprinkle of Old Bay Seasoning.
Mix these ingredients well to create a flavorful topping.
Generously sprinkle this mixture over the sauce-covered fish in the casserole dish.
Step 4: Bake the Casserole
Preheat your oven to 350°F (175°C).
Place the casserole dish in the oven and bake for 20-30 minutes, or until the cheese topping is golden brown and bubbly.
There is no need to cover the dish with foil during baking.
Once done, remove from the oven and allow it to cool slightly before serving.
Enjoy your cheesy baked fish and spinach casserole!