Why It Works
- Using a variety of fish (mostly finfish) and fewer shellfish is truer to the original spirit of bouillabaisse.
- A mortar and pestle is a wonderfully rustic way to make the rouille, but a blender or food processor can work, too.
- Using a blender instead of the more traditional food mill helps to break down the solids enough so they can pass through a strainer (though you can use a food mill if you have a good one).
The bowl of bouillabaisse lands on a table in a tony New York restaurant. A rusty saffron broth swirls around fat scallops, blushing-pink shrimp, jet-black mussels, and clamshells the cold color of slate. Topping it off is a hunk of lobster tail and the tender claw meat, deftly removed from the shell in one piece.
It's fragrant, beautiful, and undeniably delicious. But it's just not bouillabaisse.
Now, I'm not one to insist on strict rules of authenticity. It sets an impossible bar, one that often denies the variations over time and place that are the real—and much more complicated and messy—story of our food. There isn't one true way to make anything, and why would we want that anyway? It's stifling.
But I'm also not one to ignore what authenticity can help to preserve, which is the spirit and defining characteristics of a dish. Just as there isn't only one true way to make a recipe, there isn't an endless number of acceptable ways, either. A hamburger cannot be frog's legs stuffed into a baguette, coq au vin can't be made without the vin (although it's often made without the coq), and bouillabaisse isn't a seafood soup consisting primarily of shellfish.
No, bouillabaisse is a fish soup before it is anything else. It can contain shellfish, but it doesn't have to. That's not what's most important. Forget the lobster, forget the shrimp, the scallops, the bivalves. Or don't forget them, and make a shellfish soup—but then, don't call it bouillabaisse. Maybe call it cioppino, a bouillabaisse-like stew from San Francisco that's chock-full of shellfish. There's nothing wrong with that.
If you want to make bouillabaisse, though, read on.
What Is Bouillabaisse?
Bouillabaisse (pronounced "BOO-ya-bess") is a rustic fish stew from the Provençal port city of Marseille. The most famous version is a grand feast, featuring an array of fish intended to feed a crowd.
Aside from the variety of fish, it's defined by a handful of key ingredients and flavors: floral saffron, sweet and anise-y fennel, and a subtle note of orange zest.
It's nearly always served with rounds of baguette croutons topped with rouille, a thick and pungent aioli-like sauce made with garlic, bread (or sometimes potato), olive oil, red chile pepper, and, if you like, more saffron.
The word bouillabaisse itself likely comes from the words for "to boil" and "to lower," which, respectively, describe the vigorous boil the soup is initially brought to, which helps emulsify fats and oil into the broth, and the lowering of the heat to more gently simmer the soup until it's done.
What Kind of Fish Should Go Into Bouillabaisse?
There are many potential answers to this question. If you're from Marseille, in the south of France, where bouillabaisse originated, you may reel off a list of whole fish that are required for a true bouillabaisse: scorpion fish, conger eel, monkfish, sea bass, sea bream, red mullet, John Dory, whiting, and more. Mussels, crabs, and spiny lobsters are acceptable, but not required, additions. A true Marseille-style bouillabaisse will include several of these fish, and many recipes encourage a minimum of seven types—a combination of smaller and less expensive rockfish that are used to make the broth, and others, more prized for their flesh, that are poached in the broth later on.
If we stick to this definition of bouillabaisse, one that's limited to a very local menu of fresh catch, we'd have to conclude that bouillabaisse can't be made far outside the confines of Marseille, since those of us who live elsewhere don't have access to most of those fish. I'd argue this is too strict of an authenticity test. Then again, I don't live in Marseille.
What I'd advocate instead is approaching the recipe in a way that honors the spirit of bouillabaisse, though it might not be a faithful roster of all the Mediterranean fish it's meant to include. After all, bouillabaisse began as a way for poor fishermen and their families to use the less desirable fish that didn't sell at the market on a given day. We should take that as inspiration by using whatever fish we're able to find where we live.
Exactly what this looks like will depend on where you are. In New York City, I was able to cobble together a fairly decent selection of fish: whole red mullets, whole red snapper, monkfish (fillets only), whole daurade (also sold as dorado, a type of sea bream), whole branzino (a type of sea bass), and farm-raised whole Dover sole (a gelatinous flatfish, to stand in for the more traditional John Dory).
In other locations, the options will be different. In some places, you may not have anywhere near that variety of fish available, and you'll simply have to do the best you can with what you can find. Ideally, your selection will include a range of fish—some lean and delicate (like whiting or snapper); some oily (like daurade or another sea bream, such as porgy); some gelatinous (like John Dory, turbot, or Dover sole); and some firm (like monkfish). If you want to toss in some shellfish, like mussels, that's good, too. Just make sure they don't end up taking over the soup.
If the only types of whole fish your local market offers are snapper and branzino, that's okay—you can still make it work. Your bouillabaisse may not have the same depth and variety of the full shebang, but it'll still be very good. Besides, there's history to support a varied approach: With just a little digging into some of my old Provençal cookbooks, I found recipes for several types of bouillabaisse, as well as related soups, like aigo-sau and bourride, that use everything from cuttlefish with their ink (to make a black bouillabaisse from Martigues) to darker and oilier fish, like mackerel and fresh sardines.
How to Make Bouillabaisse, Step-By-Step
Making bouillabaisse is somewhat similar to making a fish stock, like fumet, in that we cook the fish with aromatics to make a flavorful broth. But the similarities with fumet end there, since the idea with bouillabaisse is to make a creamy, cloudy, dare I say murky broth, not a clean and clear one. This means that unlike with a fumet, for which we cook the fish at the barest simmer to produce a clear stock, bouillabaisse is intentionally boiled hard. We want to emulsify the fish fats into the broth, for a creamier, more complex texture and flavor.
And speaking of those fats, that's another area where bouillabaisse differs from a fish stock. In a classic fish stock, we tend to use lean, white-fleshed fish for their delicate, pristine flavor. In bouillabaisse, we use a variety of fish, including oilier ones, because we want their darker, richer flavor.
The broth in a bouillabaisse isn't meant to be refined. It should be a little rough around the edges, with a texture that isn't perfectly smooth and a flavor that is all depth and complexity, not lightness and clarity.
Step 1: Sauté the Aromatics
I start the broth by sautéing the aromatics in olive oil. For this recipe, I use a combination of onion, garlic, fennel, and leek, plus cayenne pepper, saffron, a strip of orange zest, thyme sprigs, and some fennel seeds, to further underscore the fennel flavor.
Step 2: Add Tomato, Then Fish
When the aromatics have softened, I stir in tomato paste, which adds a sweeter, more complex tomato flavor and a deeper, rusty color to the broth. I also add some diced tomato for a fresher flavor.
When the aromatics have softened, I layer in the fish for the broth base. Here, I'm using a combination of whole red mullet and the bones and head of a red snapper that I've already filleted—snapper bones are great as a base for the broth, but the flesh can be put to better use. I save the fillets for later, when I'll poach them in the broth.
If you can't find rockfish, like red mullet, just ask your fishmonger for a good selection of fresh bones and heads from fish that have been butchered. Snapper, monkfish, bass, and more can work here.
Step 3: Deglaze With Alcohol
Next, I wet the pot with some white wine and, optionally, a splash of an anise liqueur (like Pernod or pastis), then let the alcohol cook off.
Step 4: Add Water and Bring to a Rolling Boil
Now it's time to add enough water to cover the solid ingredients. Many bouillabaisse recipes call for the water to already be boiling when you cover the solids with it. That certainly saves some time, since you can bring the water to a boil while you're cooking the aromatics, and it's what I call for here, but it's not strictly necessary.
I let the soup boil hard for several minutes. The goal is for it to grow cloudy and for the fat and liquid to emulsify.
Step 5: Lower the Heat and Simmer
After the vigorous boil, you can lower the heat and continue simmering the soup until the broth is saturated with fish flavor, about 45 minutes or so.
Step 6: Meanwhile, Make the Rouille
Rouille is the spicy, garlicky, flavorful mayonnaise-like spread that's classically served with bouillabaisse (though, if you prefer, you can also use aioli). It's spread on toasts that are then served with the soup.
You have plenty of time to make the rouille while the broth is simmering. I like doing this with a mortar and pestle, but you can use a food processor or blender, too.
I start by blending garlic, an egg yolk, some stale bread or panko bread crumbs, cayenne pepper, and saffron to make a paste, then drizzle in olive oil to form a mayonnaise-like emulsion. A few spoonfuls of the hot broth from the pot help bring it all together.
Step 7: Blend and Strain the Soup
When the soup is done, it's time to strain it. The traditional way to do this is with a food mill, working all the fish bones, flesh, and aromatic vegetables on the fine disk; you want a lot of the solid matter to pass through to help make a thicker broth, while removing all the large bones and scales and anything else that you wouldn't want in the soup. The problem is that most of us at home don't have a food mill that's large and strong enough to handle this task.
It's far easier to use a blender, though, and process the soup in batches, bones and all. Then you can work the resulting purée through a fine-mesh strainer to remove the larger bits.
What you're left with should be creamy and cloudy, with good, rich body courtesy of the natural gelatin in the fish bones, along with some of the solids that passed through the food mill or strainer.
Step 8: Poach the Remaining Fish in the Broth
Now it's time to finish the bouillabaisse. Return the broth to a clean pot and poach all your remaining fish, whether whole or filleted, in it. Larger fish should go in first, since they'll take the longest, and smaller fish or fish fillets should go in last. Since fitting all this into the broth at once can be difficult, you can break this up into batches, too, cooking a couple of the larger fish first, then removing them and cooking the smaller pieces of fish after that.
If you're going to add mussels or other shellfish, cook them at the end, just until they pop open or are fully cooked through.
How to Serve Bouillabaisse
The classic way to serve bouillabaisse is not preassembled in a soup bowl and then brought to the table. That's the kind of thing chefs like to do in fancy restaurants, but it's not how this dish is meant to work.
Instead, pile up all your cooked fish on a platter, and set that on the table. Bring the broth to the table in a separate pot or soup tureen.
It's up to the diners to decide how to eat it.
They can eat the soup alone, spreading rouille on baguette toasts and floating them in the broth, followed by the fish. Or they can load up the soup with pieces of fish and eat it all together.
Then again, who am I to say how to serve this? You've gone through all this trouble to re-create the spirit of bouillabaisse marseillaise at home, so eat it however you want. I think the authenticity police can sit this part of the conversation out.
For the Broth:
1/2 cup (120ml) extra-virgin olive oil
1 large yellow onion (12 ounces; 340g), diced
1 large leek (1 pound; 450g), washed of any grit and diced
1 medium fennel bulb (8 ounces; 225g), cored and diced
5 medium cloves garlic, crushed
1/2 teaspoon whole fennel seeds
2 large pinches saffron threads
One (2-inch) strip zest from 1 orange
Large pinch cayenne pepper or other red chile powder
2 sprigs thyme
2 tablespoons (30ml) tomato paste
6 plum tomatoes (1 1/4 pounds; 565g), cored, seeded, and diced
2 pounds (900g) whole fish or fish bones and heads (see note)
2 cups (475ml) dry white wine
1/4 cup (60ml) Pernod or pastis (optional)
2 quarts (1.9L) boiling water, or more as needed
2 sprigs fresh flat-leaf parsley
1 bay leaf
Kosher or sea salt and freshly ground black pepper
For the Rouille:
2 medium cloves garlic
1/4 cup crumbled stale bread or panko bread crumbs (1/2 ounce; 15g)
Large pinch cayenne pepper or other red chile powder
Pinch saffron threads
1 large egg yolk
Kosher or sea salt
1/2 cup (120ml) extra-virgin olive oil
3 to 5 pounds (1.3 to 2.25kg) mixed whole and/or filleted fish (see note)
1 pound (450g) mussels and/or crabs (optional; see note)
Kosher or sea salt
Baguette toasts, for serving
To Make the Broth: In a large Dutch oven, heat olive oil over medium heat until shimmering. Add onion, leek, fennel, garlic, fennel seeds, saffron, orange zest, cayenne pepper, and thyme sprigs. Cook, stirring, until vegetables have softened, about 10 minutes; lower heat if necessary to prevent browning.
Stir in tomato paste and cook, stirring, for 2 minutes. Add diced tomatoes and cook, stirring, for 3 minutes longer. Layer in whole fish and/or fish bones and heads, stirring to mix.
Add white wine and Pernod or pastis (if using), stirring to scrape up any bits from the bottom of the pot. Bring to a boil over medium-high heat, then boil until raw alcohol smell has cooked off, about 3 minutes.
Add enough boiling water to fully cover all ingredients in the pot. Add parsley and bay leaf, increase heat to high, and bring broth to a vigorous boil. Allow to boil rapidly for 5 minutes. Lower heat to a simmer and continue to cook for 45 minutes. Season with salt and pepper.
Meanwhile, Make the Rouille: Using a mortar and pestle, a blender, or a food processor, process garlic, bread, cayenne pepper, saffron, and egg yolk to a paste. Work in 2 tablespoons (30ml) liquid from fish broth pot to thin paste slightly. (This can also help a blender or food processor work the mixture more effectively.) Season with salt.
While pounding with the pestle, or with the blender or processor running at its lowest speed, drizzle in the olive oil. If the mixture seems too thick at any point, add fish broth, 1 tablespoon (15ml) at a time, until a thick, mayonnaise-like consistency is reached. Refrigerate the rouille until ready to use, up to 3 days.
To Finish: Working in batches, transfer broth and all ingredients, including fish bones, to a blender. Remove top vent from blender lid, cover with a folded clean kitchen towel, and turn blender on at lowest speed. (Keeping the blender fully sealed and turning it on at high speed immediately can be dangerous with hot liquids, so please don't do that.) Gradually increase speed to high, then blend until as smooth as possible. (This may take some time and will depend on your blender, but feel free to let it run for a minute or longer.)
Transfer blended soup to a fine-mesh strainer set over a clean pot and, using a wooden spoon, work the broth through the strainer, scraping and pressing, until only bones and very dry fibrous material are left. Repeat with remaining broth and bones. Season strained broth with salt and pepper. Alternatively, you can work the broth and all the bones and solids through the fine disk of a food mill, but this will only work with a high-quality, commercial-grade food mill (see the "Special Equipment" section for a link).
Return broth to heat and bring to a very gentle simmer. Working in batches if necessary, season the whole and filleted fish and fully submerge in broth. Poach until just cooked through, starting with the larger whole fish that will take the longest to cook and finishing with the fillets; feel free to check doneness by cutting into the thickest part of each fish or fillet. As each is done, transfer it to a serving platter and keep warm.
If using mussels or crabs, add to gently simmering broth and cook until mussels have just opened or crabs are cooked through. (This will depend on the size of your crabs; ask your fishmonger for advice if you need it.) Transfer to the serving platter.
Bring the platter of fish to the table along with the broth in the soup pot or a tureen. Guests can eat the soup and fish separately, or together in the same bowl. The soup is best served with baguette toasts smeared with the rouille.
Large Dutch oven, blender or commercial food mill, mortar and pestle (or food processor), fine-mesh strainer
For the Broth: If you can find inexpensive whole rockfish, such as red mullet, or other whole fish, such as monkfish or conger eel, you can use any combination of them to make the soup base. If the fish are large, cut them into sections before adding to the pot. Otherwise, use a selection of fish bones and heads from your fishmonger; many types of fish can work for this, including red snapper, sea bass, and more.
For the Poaching Fish: Select the best variety of fish you can find in your area—whole when possible, fillets when not. If you use only fillets, you will need about 3 pounds total; if you use only whole fish, you will need about 5 pounds total; if you use a combination, about 4 pounds total will work. This can include a variety of delicate, firm, oily, and lean fish, such as daurade or porgy (both types of sea bream), branzino (or another type of sea bass), snapper, monkfish, whiting, turbot, John Dory, and Dover sole. You can also add some shellfish, such as mussels and/or crabs, but make sure the shellfish do not take over the soup.
|Nutrition Facts (per serving)|
|Servings: 6 to 8|
|Amount per serving|
|% Daily Value*|
|Total Fat 34g||43%|
|Saturated Fat 5g||27%|
|Total Carbohydrate 60g||22%|
|Dietary Fiber 5g||18%|
|Total Sugars 11g|
|Vitamin C 23mg||114%|
|*The % Daily Value (DV) tells you how much a nutrient in a food serving contributes to a daily diet. 2,000 calories a day is used for general nutrition advice.|