This haddock florentine is where gourmet meets comfort. Perfectly pan seared haddock complemented by a rich and creamy spinach sauce.
The use of cream cheese and sun-dried tomatoes transforms this dish into a restaurant quality feast – and it gets ready in 30 minutes.
Why you'll love this recipe
- Easy yet gourmet – No dry fish here. The juicy pan cooked haddock sits on a bed of easy creamy Florentine sauce that tastes high-end, but is a breeze to make.
- Versatile – works great for a quiet weeknight dinner, yet so delish you'd proudly serve at a dinner party.
- Quick to make – from start to finish, you're looking at roughly 30 minutes of kitchen time.
- Adaptable – Want more spice or thinking of using another flaky white fish? You totally can. See the substitutions and variations below.
Here are some helpful notes on ingredients you'll need. See the recipe card below for exact quantities.
- Haddock – the fillets should be skinless. Fresh or frozen, both work fine. If using frozen, make sure it's completely thawed before you start cooking. Here are some good defrosting tips. Haddock is delicate and breaks apart easily, so cutting longer fillets into halves or thirds makes the handling easier.
- Cooking oil – I use olive oil but any neutral tasting cooking oil will work for pan-frying the fish.
- All-purpose flour – for dusting the fish and for making the roux. It helps stabilize the sauce and thickens it too.
- Salt and ground black pepper – for seasoning both the sauce and the fish. Freshly ground pepper packs more punch.
- Butter – better to use unsalted so you can control the overall saltiness.
- Garlic – use grated or finely minced garlic. I use a garlic press. Fresh is always better.
- Whole milk – low fat is also an option but for me, the creamier, the better.
- Cream cheese – cut into cubes and left at room temperature for few minutes so it dissolves quickly.
- Crushed red pepper flakes – a small amount does the trick. Skippable, but that tiny little heat makes the sauce even better.
- Italian seasoning – the mix of dried herbs adds taste complexity.
- Baby spinach – weigh for precise measurement, if you can. If not, pack your measuring cups tightly. I use the leaves whole, but you can roughly tear them using hands.
- Sun-dried tomatoes – Use the ones that come in jars, soaked in oil – not the dry ones. Drain first, then chop or slice. They add a burst of color and an extra special layer of flavor.
- Lemon (optional) – a few slices/wedges for serving with your fish. I also like to sprinkle some lemon zest on my plate.
How to make haddock florentine
Follow these simple, photo-assisted instructions to prepare this florentine style haddock. Check out recipe card below for a printable version that has quantities, instructions and notes in one place.
Step 1: In a skillet, melt butter over medium-low heat then add garlic and sauté 1 minute. Sprinkle in the flour and stir 1 more minute. Slowly whisk in the milk until the mixture gets smooth. Keep stirring and let it thicken very slightly. Next add cream cheese, crushed red pepper flakes, salt, pepper and Italian seasoning. Whisk well to get rid of any lumps.
Step 2: Toss in baby spinach in batches – one handful at a time – so it's easy to mix. Then put sun dried tomatoes and stir.
Step 3: Cook for 1 minute. When the spinach looks a little wilted (like in the photo above) turn the heat off. Cover the skillet to keep the sauce warm while you cook haddock.
Step 4: Mix flour, salt, ground black pepper in a bowl. Pat dry haddock using paper towel. Sprinkle the flour mix over haddock and use hands to coat evenly.
Step 5: In a separate skillet / pan (preferably non-stick) heat olive oil on medium-high. When the oil is hot, lay the fillets and cook undisturbed 2 to 4 minutes on one side. Flip and cook another 2 to 3 minutes (internal temperature of 145°F / 63°C is the goal).
Step 6: Before the fish gets fully cooked, warm up the spinach sauce on medium-low heat. Stir frequently and if the consistency looks too thick, add some milk. To serve, put some florentine spinach sauce on a plate then top with haddock piece(s). Garnish with lemon slices/wedges and a sprinkle of lemon zest.
- Fish sticking to pan: A non-stick pan is your friend here. Make sure the oil is hot enough before you put the fish. If it sizzles upon contact, you're good. Also, don't move the fish and don't flip too early – let a crust form first.
- Sauce too thin or thick: If it's too runny, keep simmering. If too thick, add a splash of milk.
- Fish breaking apart: Use a thin spatula for flipping. And handle with care as haddock is a delicate, flaky fish.
- Uneven cooking: The fillets should be even in thickness for consistent cooking. If they're not, adjust the cooking time for each piece.
- Dry-tasting fish: You've likely overcooked. Haddock needs only a few minutes per side. Use an instant-read thermometer (145°F / 63°C is your goal). Or use a fork to test flakiness.
- Too salty: Don't use salted butter and if you must, reduce the quantity of added salt.
- Spinach too wilted: If you like spinach less wilted, toss it into the sauce as you're warming it up just before the haddock finishes cooking, not earlier.
Substitutions and variations
- Fish options: Cod, halibut or tilapia can easily replace haddock here. Cooking times may differ.
- Cream cheese replacement: Use ¾ cup heavy cream plus ¼ cup freshly grated Parmesan instead of 4 ounces of cream cheese. Sauce might be a bit liquidy, so simmer longer to thicken.
- Oil alternatives: Neutral cooking oil such as canola, vegetable or grapeseed oil can be used instead of olive oil.
- Spinach: Regular spinach works just as well as baby spinach. Just chop it up and use the same quantity.
- Different dried herbs: To switch things up, replace Italian seasoning with dried oregano or basil. Herbes de Provence also works great.
- Heat adjustment: Skip red pepper flakes if you don't like a little spice. And if like me you want to up the heat, double the quantity or add finely chopped fresh red chili.
- Mushrooms: Toss in some sautéed cremini mushrooms along with the spinach for a more earthy sauce.
What to serve it with
- Fresh salad – arugula or mixed greens tossed in a light vinaigrette.
- Sweet corn – grilled or boiled, for a touch of sweetness.
- Steamed veggies – think green beans or asparagus, lightly seasoned.
- Warm crusty bread – crispy outside, soft inside, just waiting for that sauce.
- Risotto – a parmesan version will pair great.
- Mashed potatoes – smooth and creamy, best side ever!
- White rice – a no-fail option that always works.
Storage and reheating
- Storage: Let it cool down then transfer to an airtight container. Keep in the fridge for up to 2 days. Don't freeze – the texture will change when it thaws.
- Reheating: Preheat oven to 275°F (135°C). Place leftovers in a baking dish, cover with foil and heat 12 to 16 minutes. Or transfer to a saucepan and warm over low heat 5 to 7 minutes, lid on. Microwaving isn't ideal here, but if you must, use 50% power and heat in 30-second intervals until warmed through. Add a splash of milk in all these methods to revive the sauce consistency.
Just so you know
- The term "florentine" in the recipe name is a nod to Florence, Italy. Florentine-style dishes typically feature spinach and a creamy sauce.
- New to using haddock? It's a white, flaky fish loved for its mild taste. Practically a sponge for flavors, so it's perfect for a rich dish like this.
- When buying fresh haddock, trust your nose. It should smell clean, almost neutral – not "fishy".
- Scaling up this recipe to feed a crowd? Use the “+” sign on the recipe card below to modify the servings – the ingredient quantities will adjust automatically.
For Pan Seared Haddock
- 1.5 pounds (680 g) haddock fillets - skinless – cut longer fillets into halves or thirds. (Note A)
- 2 tablespoons olive oil - or any cooking oil
- 3 tablespoons (23 g) all purpose flour
- ½ teaspoon salt
- ½ teaspoon ground black pepper
For Florentine Sauce
- 3 tablespoons (42 g) unsalted butter
- 4 cloves garlic - finely minced or grated
- 2 tablespoons (15 g) all purpose flour
- 2 cups (473 ml) whole milk
- 4 ounces (113 g) cream cheese - cut into small cubes
- ½ teaspoon crushed red pepper flakes
- ½ teaspoon salt
- ½ teaspoon ground black pepper
- ½ teaspoon italian seasoning
- 6 cups (180 g) baby spinach - packed cups
- ½ cup (55 g) sun-dried tomatoes - sliced or chopped, drained (Note B)
- lemon slices or wedges - optional, plus some lemon zest
- To make florentine sauce, first melt butter over medium-low heat in a large skillet. Then add garlic, sauté 1 minute until fragrant but not browned.
- Sprinkle in the flour, stir 1 more minute. Slowly add milk while whisking until the mixture looks smooth. Keep stirring until it very slightly thickens – about 3 to 4 minutes.
- Add cream cheese, crushed red pepper flakes, salt, pepper and Italian seasoning next. As the cheese melts, use a whisk to smooth out the sauce and get rid of lumps.
- Toss in baby spinach in batches (one handful at a time) for easy mixing. Then add sun-dried tomatoes and stir. Cook 1 minute to let the spinach wilt a little, then turn the heat off. Cover the skillet to keep the sauce warm while you cook haddock next.
- Mix flour, salt and ground black pepper in a bowl. Pat dry haddock using kitchen paper towel. Sprinkle the flour mixture over haddock – use hands to coat evenly.
- In a separate skillet (preferably non-stick), heat olive oil on medium-high. Lay the fillets in– they should sizzle right away. Don't crowd the pan. Cook undisturbed 2 to 4 minutes on one side (depending on thickness). The fillets should release easily from the pan and have a golden hue. Flip and cook another 2 to 3 minutes (internal temperature of 145°F / 63°C is the goal).
- Just before the fish is fully cooked, warm up the skillet containing spinach sauce on medium-low heat. Stir frequently and if the consistency looks too thick, add a splash of milk.
- To serve, put some florentine spinach sauce on a plate then place haddock piece(s) on top. Garnish with lemon slices/wedges and a sprinkle of lemon zest.
- Step-by-step photo instructions
- Recipe troubleshooting
- Substitutions and variations (full list)
- Serving ideas
The nutritional information provided here is calculated using a third-party nutrition calculator. These values are estimates, and we cannot guarantee the correctness of the displayed numbers. Please see our disclaimer page.