Zuppa di Pesce, an Italian fish stew, probably has as many variations as there are stars in the galaxy. Though Zuppa di Pesce translates as “fish soup,” it’s really more like a fish stew as it usually also includes a variety of shellfish.
Zuppa di Pesce is one of the classic seafood soup recipes of Italy. It’s a tomato-based seafood stew made with fresh seafood, vegetables, and herbs. There are countless recipes and countless methods for making it but essentially they’re all united by a few things – fresh ingredients, local seafood, and a good quality broth or stock.
My guess is that Zuppa di Pesce was the precursor to Cioppino, the famous Italian-American seafood stew popularized by Italian fishermen in San Francisco in the late 19th century.
Not a whole lot, in my opinion. Many versions of an Italian seafood stew could be called a Cioppino and vice versa. Personally, I look at Cioppino as more of a true stew, with a greater variety of seafood and slightly richer and thicker than Zuppa di Pesce. Others might disagree.
Semantics aside, it’s hard to go wrong with seafood simmered in a garlicky-tomato-broth that’s seasoned with a little white wine, fresh herbs, and some spices like some red pepper flakes. Call it a soup, call it a stew, call it whatever you want, there’s a reason there are infinite incarnations of this Italian favorite!
Here’s my version of this classic Italian fish stew recipe. I’ve included both a video and a pictorial summary of the steps.
I hope you enjoy my contribution to the zillions of Zuppa di Pesce recipes out there. I keep it pretty simple, with minimal veggies, so as to let the homemade broth really shine through. For fish, I chose black sea bass. And for shellfish, I chose shrimp and mussels.
See the printable recipe card at the bottom of this post for exact ingredient amounts. And see the Recipe Notes just below the Summary of Step section for my recommended store-bought fish broth.
Heat the olive oil in a medium stock pot over medium heat, add garlic, and saute for about 2 minutes, stirring frequently, being careful not to burn.
Many recipes also include onions, shallots, and fennel. Feel free to add them but saute them first for about five minutes and then add your garlic in the last minute.
Cook for a few minutes, until it reduces slightly.
Note: This step is optional. It’s not a big deal if you don’t have white wine on hand. Wine boosts the acidity a little bit, which isn’t quite as important as in other soup recipes because the tomatoes also add acidity. If you do choose to add white wine, make sure it’s a dry white wine like Chardonnay or Sauvignon Blanc.
Add the tomatoes and raise the heat to medium-high. Simmer for at least 5 minutes. At this point, it’ll just look like tomato sauce.
Note: You want the tomatoes to be somewhat of a sauce-like consistency. Depending on the type of canned tomatoes you buy, some will be more saucy than others. Look for crushed or pureed canned tomatoes. If they’re too chunky or thick, keep simmering until they break down into a sauce-like consistency.
Simmer for about 10 to 15 minutes.
Yes, you’ll need fish for an Italian fish stew! Simmer for about 5 to 10 minutes or until the fish is cooked through and easily flakes apart.
Note: I added the mussels first in the video above but in retrospect, I think it’s a little better to add the fish first. The mussels and shrimp will cook a lot quicker.
These are some nice wild shrimp from the Gulf Coast. As soon as you add them to the simmering soup, you’ll notice they’ll start to turn pink. And then add your mussels right afterward…
Those are some nice Atlantic blue mussels. Simmer for 3 to 5 minutes or until all the mussel shells open. The soup will now start to take on a more stew-like character with all the seafood mixed in…
Most Zuppa di Pesce recipes include parsley but I also like to add fresh basil. You can use either one or both. Some fresh tarragon would be a great choice too. Green leafy herbs will immediately wilt upon contact with the hot broth…
Ladle the stew into individual bowls and add additional herbs and seasonings, to taste.
Seasonings include salt, freshly ground black pepper, red pepper flakes, and a squeeze of fresh lemon juice.
Don’t get me wrong. I like cod and haddock. But I don’t really love them in soups and stews. Their light, flaky texture, and mild flavor are, in my opinion, better suited for things like fish and chips or recipes with lots of seasoning. Furthermore, cod, as you may know, has been tragically overfished. There are many similar and more sustainable options, including fish that I think are a lot more flavorful.
Take, for example, black sea bass.
That’s a beautiful black sea bass I caught on a recent fishing trip on the Long Island Sound.
It’s local to northeast Atlantic waters and has a tender but firm texture with a mild but subtly sweet flavor that is distinct, and, in my opinion, superior to both cod and haddock.
Unfortunately, it may not be easy to find outside smaller specialty fish markets. It also has limited seasonal availability from late summer to late fall. If you can’t find it, pivot to this…
Any fish can work in a Zuppa di Pesce!
Embrace the incredible diversity of local fish wherever you live. There are a lot more fish in the sea than cod, haddock, tuna, and salmon. We need to embrace a wider range of more sustainable choices, of which there are many.
In Italy, they use Mediterranean fish like monkfish, red mullet, snapper, sea bream, and scorpion fish.
Here in the northeast US, monkfish, hake, blackfish (also called “tautog”), striped bass, mackerel, porgy (also called “scup”), and dogfish are all excellent choices. They all have their own unique flavor profile and they’d all make delicious choices in any Italian fish stew.
If you can’t find any of those, look for Atlantic pollock. It’s available year-round, is found in most supermarket fish departments, and is the most economical of the traditional New England groundfish (which includes cod and haddock).
On my recent fishing trip, which was on a party boat of about 30 people, I’d estimate that about 100 fish were caught. On the ride home from the middle of the Long Island Sound, the deckhands filleted everyone’s catch. Guess how many people also took home the carcass?
Those are the two I brought home. The top one is a blackfish and the bottom one is black sea bass.
I could not help but look with a little disgust at the other 100 or so wasted carcasses that nobody wanted. At the very least, some seagulls ate well that day.
It’s sad that we’ve forgotten how to make homemade fish stock. It’s even easier and less time-consuming than chicken or beef stock. They’re also a great source of nourishment as the heads of fish are rich in many nutrients. Ask your local fishmonger for them. Most are happy to give them to you at around a dollar per pound. Some may even give them to you for free.
There’s nothing like the flavor of homemade fish stock with subtle flavors of fennel, lemon, white wine, and fresh herbs. And I say it all the time but a properly made fish stock should NOT TASTE FISHY. It should taste like the ocean, slightly salty, with a delicate background taste of fresh fish and other flavors.
I also understand that not everyone is ready or willing to make homemade fish stock. In that case, try this…
That would be Aneto Fish Broth. This is the only store-bought fish stock/broth I can enthusiastically recommend. If you’re not going to make your own, this is your next-best option.
The flavor is outstanding for a packaged seafood broth. Even more impressive, they don’t use any chemical flavorings. Find Aneto Fish Broth here.
Of course, any fish soup recipe would emphasize good quality fish and fish broth. But you’d be amazed how many Italian fish soup recipes do not, at least online (not traditionally).
Truth be told, you can make a good Zuppa di Pesce without a truly great fish broth. Clam juice or even chicken broth can still make a good base with tomatoes, wine, and herbs.
But I’m not interested in a good Zuppa di Pesce.
I want an EPIC Zuppa di Pesce, one that will make me breathe big sighs of satisfaction with every slurp. And a good fish broth is the key.
And don’t forget to serve it with some crusty bread to soak up all the broth, of course!
Zuppa di Pesce, an Italian fish soup, is a simple but delicious combination of garlic, tomatoes, white wine, fish stock, fresh fish, shellfish and herbs.
Add the white wine and simmer for a few minutes until it's slightly reduced.
Add the tomatoes. Raise the heat to medium-high and simmer for 5 to 10 minutes.
Add the fish stock and lemon zest and bring to a gentle boil.
Add the fish and simmer about 5 to 10 inutes or until fish is cooked through and easily flakes apart.
Add the mussels and shrimp and simmer for 3 to 5 minutes or until the shells open.
Add the basil and/or parsely and stir it in.
Ladle into individual bowls and add optional seasonings, to taste.
Craig Fear is the creator of Fearless Eating and the author of three books, The 30-Day Heartburn Solution, Fearless Broths and Soups and The Thai Soup Secret. After years helping clients with digestive issues, Craig decided to pursue writing full-time. He intends to write many more books on broths and soups from around the world! Click here to learn more about Craig.