When the weather turns chilly, there’s nothing more comforting than a bowl of warm, hearty soup. This Italian Fish Soup is one of my favorite cold-weather meals. It’s simple, healthy, and comes together in about 30 minutes, making it perfect for busy weeknights.

It’s loaded with tender chunks of white fish, vegetables, and a rich, tomato-based broth that’s both light and satisfying. Whether you’re cooking for the family or just want something cozy for yourself, this soup always hits the spot.
Why I Love This Recipe
I’m a big fan of one-pot meals, especially in winter when the last thing I want is a sink full of dishes. This fish soup is truly a throw-it-all-in-the-pot kind of dinner.
It’s also one of those recipes that feels impressive but is actually super easy. The fish cooks right in the broth, soaking up all those savory, herby tomato flavors without any extra steps.
And it’s healthy without feeling restrictive. Loads of veggies, lean protein from the fish, and naturally gluten-free. It’s the kind of comfort food you can feel good about serving to the whole family.
Fish Soup Makes an Easy Dinner
Like any good vegetable soup, this Italian fish soup is a weeknight hero. You chop a few vegetables, open a couple of pantry staples, and everything cooks in one pot in less than 30 minutes.
White fish like cod cooks quickly in the hot broth, so you don’t even need to pre-cook it. Less fuss, less mess, more time to sit back with a warm bowl and relax.
Another thing I love is that it’s super flexible. Add shrimp or clams if you want a bit of seafood variety, or toss in extra veggies based on what you have in the fridge.
Ingredients for Fish Soup
Cod Fillet – I love using Alaska or Pacific cod for this. It’s moist yet firm, with a subtle sweetness that works perfectly in soups. The flaky texture holds up well in the broth without falling apart.
Other Ingredients You’ll Need:
- Onion and garlic – Classic aromatics that give the soup depth.
- Celery and green bell pepper – Adds crunch and balances the richness.
- Dry white wine – Deglazes the pot and layers in extra flavor.
- Lemon juice – Brightens up the dish and complements the seafood.
- Dried Italian seasoning – Easy way to get that classic herby flavor.
- Canned diced tomatoes – Brings beautiful color and richness to the broth.
- Stock – Fish stock adds the most depth, but chicken or vegetable broth work great too.
- Tomato paste – Thickens the broth slightly and deepens the tomato flavor.
- Fresh basil – A final touch of freshness and classic Italian flavor.

How to Make Fish Soup
- Sauté the Veggies
In a large pot, sauté the onions until they’re soft. Add the celery, bell pepper, and garlic. Keep stirring until everything is fragrant and tender. - Deglaze and Build Flavor
Pour in the white wine, lemon juice, and Italian seasoning. Let it simmer for a minute to cook down slightly. Add the canned diced tomatoes with their juices and stir well. - Add Broth and Simmer
Stir in your stock and the tomato paste. Let the soup simmer for about 10 minutes so the flavors can come together. - Cook the Fish
Add the pieces of fish directly to the hot broth. Simmer gently for about 5 minutes until the fish is cooked through and flakes easily. Remove from heat, stir in fresh chopped basil, and serve hot.
Tips for Making This Fish Soup
- Add the fish at the end. This helps prevent overcooking, so the fish stays tender and doesn’t break apart.
- Use firm white fish. Cod is perfect, but haddock or monkfish also work well. If you use softer fish like tilapia, just be extra gentle when stirring.
- Spice it up. A pinch of red pepper flakes can add a nice little kick.
- Make it your own. Feel free to add shrimp or clams for extra seafood goodness.
- Prep ahead. If you’re making it in advance, don’t add the fish until you reheat the soup so it cooks fresh and tender.
What Fish to Use
Cod is my favorite here because of its mild flavor and sturdy texture—it holds up perfectly in the soup without falling apart.
If you want alternatives, go for other firm white fish like haddock or monkfish. You can also use sole or tilapia in a pinch, but just know they’re more delicate and can break apart in the soup.
If you love seafood, try tossing in shrimp or clams for more variety. It’s like a simplified version of Cioppino without the extra work.
Do You Need to Pre-Cook the Fish?
Nope! That’s one of the best parts. Fish cooks quickly and soaks up all the lovely flavors from the broth. Just add it at the end and let it simmer for about 5 minutes until it’s tender and opaque.
Is This the Same as Fish Stew?
Pretty close! The rich, thick tomato broth makes this Italian fish soup feel hearty enough to be considered a stew. If you want it even thicker, reduce the broth a little or add more diced tomatoes or even a bit of tomato sauce.

How to Store and Serve Leftovers
- Storing: Let the soup cool, then transfer it to an airtight container. It’ll keep in the fridge for up to 3 days.
- Freezing: For longer storage, freeze it. Just know the texture of the fish may change a bit after freezing.
- Reheating: Warm it gently in the microwave or on the stove over medium-low heat until hot.
Pro Tip: If you’re planning to make a double batch for meal prep, cook the broth ahead but don’t add the fish until you’re ready to serve. When reheating, add fresh fish pieces so they cook perfectly in the hot broth.
Italian Fish Soup At-a-Glance
- Flavor Profile: Rich, tomato-based broth with herbs and mild, tender fish.
- Texture: Hearty, with chunky vegetables and flaky fish in a warm, savory broth.
If you try making this, I’d love to hear what you think—or how you customize it with your favorite veggies and seafood. It’s the kind of meal that’s easy, cozy, and always welcome on a cool evening.
Italian Fish Soup

When the weather turns chilly, there’s nothing more comforting than a bowl of warm, hearty soup.
Ingredients
- 16 ounces wild Alaska Cod or whitefish
- 2 tablespoons light olive oil
- 1 large onion diced
- 1 small lemon juiced
- 2 teaspoons Italian seasoning
- ½ teaspoon salt
- 4 cloves minced garlic
- 2 stalks celery diced
- 1 large green bell pepper cubed
- 2 tablespoons tomato paste
- 3 tablespoons chopped fresh basil
- ½ cup dry white wine
- ½ teaspoon black pepper
- 2 cups chicken stock or vegetable stock
- 2(14.5-ounce) can diced tomatoes undrained
Instructions
- Heat olive oil in a large pot over medium-high heat and add the onion. Cook for 6–8 minutes until softened and fragrant, stirring often.
- Stir in the garlic, celery, and green bell pepper. Turn the heat down to medium and let everything cook for another 5 minutes.
- Pour in the wine and lemon juice, then add the Italian seasoning, salt, and black pepper. Give it a good stir and cook for 2–3 minutes until the liquid has mostly evaporated.
- Now add the diced tomatoes with their juices, the chicken stock, and tomato paste. Let the soup simmer uncovered for about 10 minutes until the peppers are just tender.
- Cut the cod into bite-size pieces and gently stir them into the pot. Bring it to a low boil and let it simmer for 5 minutes, or until the fish flakes easily and is fully cooked.
- Take the pot off the heat, stir in the fresh basil, and ladle into bowls to serve.
Notes
- Add the fish at the end to keep it from overcooking and falling apart.
- You can use other meaty white fish like haddock or monkfish for a similar result. If those aren’t available, sole or tilapia will work, but they’re more delicate and may break apart in the broth.
Nutrition Information
Yield
4Serving Size
1Amount Per Serving Calories 365Total Fat 13gSaturated Fat 2gTrans Fat 0gUnsaturated Fat 9gCholesterol 96mgSodium 796mgCarbohydrates 17gFiber 3gSugar 8gProtein 40g
Easy Shrimp Recipes.com, occasionally offers nutritional information for recipes contained on this site. This information is provided as a courtesy and is an estimate only. This information comes from online calculators. Although allchickenrecipes.com attempts to provide accurate nutritional information, these figures are only estimates.