
Seafood chowder is clam chowder's more generous cousin. Same salt pork and potato base, same restraint about flour, but built on fish stock instead of clam liquor and finished with whatever came out of the water that week. It should taste of the sea rather than of cream.
Difficulty is easy, and easier than clam chowder because there is no sand to fight. About an hour and fifteen minutes if you make the stock, half that if you buy it.
One decision drives the whole recipe: buy whole fish and fillet it yourself, or buy fillets. Whole fish gives you the frames, and the frames give you a fumet that no carton of stock can match. If you would rather not, that is fine and the recipe still works. But that stock is where the depth comes from, and it is free.
This makes four servings.
Equipment
Three pieces do the work here, and I stock all three.
- 5 Quarts Round Dutch Oven with Lid. Fumet first, then the chowder in the same pot. Heavy walls hold a low steady heat, which is what a cream soup needs and a thin pan cannot give you.
- Scandinavian Fillet Knife with Leather Sheath. If you are breaking down whole fish for the frames, this is the blade. Long enough to take a market haddock fillet off in one stroke, and flexible enough to ride the bones instead of tearing through them.
- Two-Tone XL Cutting Board, 18 by 12 Inch. A whole fish is longer than most boards. Eighteen inches is what lets you work without the tail hanging off the edge.
You will also need a fine mesh strainer, a ladle, and a wooden spoon.
Ingredients
For the fumet
- 2 pounds fish frames and heads, gills removed, rinsed
- 1 medium onion, roughly chopped
- 1 rib celery, roughly chopped
- 1/2 cup dry white wine
- 6 cups water
- 1 bay leaf
- 1 teaspoon black peppercorns
For the chowder
- 4 ounces salt pork or thick cut bacon, cut in small dice
- 1 tablespoon unsalted butter
- 1 large onion, diced
- 2 ribs celery, diced
- 1 1/2 pounds Yukon gold potatoes, cut in 1/2 inch dice
- 1 bay leaf
- 3 sprigs fresh thyme
- 1 1/2 pounds haddock fillet, skin off, cut in 2 inch pieces
- 1 cup heavy cream
- Salt and white pepper, to taste
- Fresh parsley or chives, chopped, for serving
- Oyster crackers, for serving
Method
Before you start
Set up your mise en place. Dice everything and have the strainer ready. The chowder itself moves quickly once the potatoes are in.
Judge the fish at the counter. Whole fish should have clear bright eyes, red gills, and firm flesh that springs back when pressed. Fillets should have no darkening or drying at the edges. Fresh fish smells like the sea, not like fish. On a lean white fish, firmness is the single most reliable freshness tell there is.
Remove the gills before the frames go in the pot. They are bitter and they will muddy the stock. This is the same reason you pull the gills from a crab.
Make the fumet
Sweat the frames. Put the frames, onion, and celery in the pot with the wine and let them steam covered over low heat until the flesh clinging to the bones turns opaque, about 5 minutes. There is no browning in a fumet. Color here would make the stock taste roasted and cloud it.
Simmer 20 minutes and no longer. Add the water, bay leaf, and peppercorns, bring to a bare simmer, and hold it there. Twenty minutes is the whole window. Fish bones give up everything they have quickly and then start turning bitter, which is the opposite of how meat stock behaves.
Strain gently. Pour through a fine mesh strainer without pressing on the solids. Pressing forces fine particles through and clouds the fumet. You want about 4 cups.
Build the chowder
Render the salt pork. In the cleaned pot over low heat, cook the diced pork slowly until the fat runs out and the pieces are crisp and golden, about 8 minutes. Lift the pieces out for the top. That rendered fat is the backbone of the flavor and there is no substitute for it.
Sweat the onion and celery. Add the butter to the pork fat, then the onion and celery, and cook until soft and translucent with no color, about 8 minutes.
Add the potatoes and the fumet. Stir in the potatoes, bay leaf, and thyme, then pour in the strained stock so the potatoes are just covered. Simmer until they give easily to a knife tip, about 12 minutes.
Crush a few potatoes against the side of the pot. Four or five is enough. They release starch and thicken the chowder from the inside, which is why there is no flour in this recipe and why a floury chowder tastes pasty.
Finish and serve
Add the cream and hold the heat down. Pour in the cream and bring the pot to no more than 180F, where the surface barely shivers. Do not let it boil once the cream is in, because it will separate and there is no fixing it.
Lay the fish on top and take the pot off the heat. Season the chowder first, then set the fish pieces on the surface, cover, and remove from the burner. It will cook through in the residual heat in about 5 minutes. Do not stir it now, or you will shred it into threads.
Check it is done, then fold once. The fish should be opaque and separate into flakes under gentle pressure. On haddock the flake cue is reliable, unlike monkfish where it tells you nothing. Fold the pot through once, gently, to break the fish into large pieces rather than shreds.
Rest, then serve. Ten minutes off the heat makes it better. Serve with the crisp pork scattered over, parsley or chives, and oyster crackers.
Fish only, and why haddock

This is the version I would make. Haddock and cod are the two candidates and the rule I use for them is simple: if it goes into a hot pan and comes straight out, use haddock, and if it sits in liquid, use cod.
Chowder is the exception that proves the rule, and it is worth understanding why. Cod holds together better in liquid because its flake is coarser and firmer. Haddock is finer grained and softer, so it breaks down more readily. In most liquid cooking that is a fault. In chowder it is the entire point, because those fine flakes disperse and give the soup body all the way through. You end up with a chowder that tastes of fish throughout rather than a cream soup with fish sitting in it.
Cod still makes a fine chowder if that is what your counter has. You will get bigger, cleaner chunks and a thinner-tasting broth around them.
Adding mixed shellfish
Shellfish turn this into the version most restaurants serve, and the only real trick is that they cook at different speeds. Add them in order, not all at once.
Mussels or clams go first, and separately. Steam them open in a splash of wine in another pan, strain that liquid through cheesecloth and add it to the chowder, then hold the shucked meat aside. Do not steam them in the chowder itself, because whatever sand they carry goes straight into your soup.
Scallops need almost nothing. Cut large sea scallops in half through the equator and add them with the fish, off the heat. They are done in 3 to 4 minutes. Buy dry scallops rather than wet packed, because the phosphate solution in wet ones releases water and will thin your chowder.
Shrimp go in with the fish. Peeled, cut in half, off the heat. Read the shape: a loose C is cooked and a tight O is overcooked.
Keep the total the same. Use 1 1/2 pounds of seafood in total rather than adding shellfish on top of the full weight of fish. Otherwise there is more solid than liquid and it stops being a chowder.
Making it a salmon chowder

Salmon makes a genuinely different soup, and a good one, but treat it as its own recipe rather than a swap.
The fat changes everything. Salmon is an oily fish, so the chowder comes out richer even before the cream. Cut the cream to 1/2 cup and let the fish carry it.
Do not use salmon frames for the fumet. They are too strong and too oily, and they will overwhelm the pot. Use a light vegetable stock or water instead.
Pull the pin bones first. Salmon has a real pin bone row down the fillet, unlike haddock. Pull them forward, in the direction the bone leans, rather than straight up, or you tear the flesh.
Change the herbs. Dill instead of thyme, and a squeeze of lemon at the end. Salmon wants acid in a way that white fish does not.
Cook it less. Salmon is at its best a shade under, so give it 3 to 4 minutes off the heat rather than 5.
Make ahead, storage, and reheating
Make ahead. The base through the potato stage is better a day ahead, and the fumet can be made two days ahead or frozen. Add the cream and the seafood only at serving.
Refrigerating. 3 days, though the fish is best on the first day. Cool it quickly rather than leaving the pot on the stove, since a large volume of dairy soup cooling slowly sits too long in the range where bacteria multiply fastest.
Freezing. Freeze the base before cream and seafood go in, and it holds 3 months. Do not freeze the finished chowder. Cream separates on thawing and cooked fish comes back mushy. Fumet freezes perfectly on its own and is worth making in a double batch for that reason.
Reheating. Low heat, stirring gently, never boiling. Fish reheated in liquid overcooks fast, which is the strongest argument for keeping it out of the base.
A short history
Chowder came to New England with fishermen, probably French and Breton, and the word is contested. The usual explanation traces it to chaudiere, the French cauldron a communal fish stew was cooked in. Another traces it to jowter, an English dialect word for a fish seller. Neither is settled.
Fish chowder is the older form. Clams came later. Early American chowders were layered rather than simmered, built in a pot with alternating layers of salt pork, fish, onions, and ship biscuit, and they contained no dairy at all. Milk and cream arrived in the nineteenth century, and potatoes took over the thickening job from the biscuit, which is exactly what they are still doing in this recipe.
The practical logic behind it has not changed either. A chowder was what you made from the part of the catch that did not sell, plus what kept on a shelf. Making the stock from the frames is not a refinement added by restaurants. It is the original point of the dish.
Nutrition, estimated
Per serving, based on 4 servings.
| Calories | 620 |
| Total fat | 36 g |
| Saturated fat | 19 g |
| Cholesterol | 150 mg |
| Sodium | 620 mg |
| Total carbohydrate | 36 g |
| Dietary fiber | 4 g |
| Sugars | 6 g |
| Protein | 38 g |
These are estimates calculated from standard reference values for the listed quantities, not laboratory measurements. Most of the saturated fat and nearly all the sodium come from the salt pork and the cream rather than the fish, so both move considerably if you change those. The figure does not include any salt added to taste.
References
- Haddock, NOAA Fisheries. Species detail and stock status for U.S. wild caught haddock, including why its flake is finer than cod, which is the whole reason it suits this soup.
- Selecting and Serving Fresh and Frozen Seafood Safely, U.S. Food and Drug Administration. Judging whole fish and fillets at the counter, and safe storage once home. Seafood is FDA regulated, not USDA.
Related guides
- How to Fillet Haddock, which covers the light hand this fish needs and how to tell haddock from cod at the counter
- How to Fillet a Whole Salmon, for the pin bone row and the salmon version
- How to Shuck Scallops, for the dry versus wet packed problem in full
Thank you
Thank you for cooking this. If you made the fumet from the frames rather than buying stock, you did the thing that separates a chowder from a cream soup, and you did it with something most people throw away.
If you make it, I would like to hear how it went, and especially what you changed. Tell me here.
If this one worked for you, clam chowder is the same base with clam liquor instead of fumet, and the haddock guide will get you the frames to start with.
Cook Bolder, Serve Wiser, Eat Better.
Chef Alan, 35 years in professional kitchens and a six-time Four Diamond chef
Wine Drop Cookery