Indulge in the warmth and comfort of spicy fish soup, a nourishing bowl that pairs flaky white fish with vegetables and a lively blend of spices.
This vibrant soup (or light fish stew) is perfect for anyone who enjoys a touch of heat. Tender chunks of fish cook in a fragrant broth built from onions, peppers, tomatoes and a blend of warming spices. Each spoonful delivers layered flavour and comforting warmth, making it ideal as a starter, lunch or a light main.

This recipe produces a fragrant, low-fat soup with plenty of nutrition—under 300 calories per serving and low in saturated fat.
How to make Spicy Fish Soup
Step by step recipe

Spicy Fish Soup
A healthy recipe packed with spices and fresh vegetables. This soup is warming, nutritious and quick to make. Red onions, garlic, red and yellow peppers and tinned tomatoes are cooked with cumin, turmeric and a ground pickling spice. White fish is added at the end and the soup is finished with fresh coriander.
Ingredients
- 2 tablespoons olive oil
- 2 red onions, finely chopped
- 1 red pepper, finely chopped
- 1 yellow pepper, finely chopped
- 6 cloves garlic, crushed or finely chopped
- 400 g (14 oz) tinned tomatoes
- 1 tablespoon pickling spice mix, ground to a powder (bay leaves, allspice, bird’s eye chillies, black peppercorns, cloves, ginger root, coriander seeds, yellow mustard seeds, crushed cassia cinnamon)
- 1 teaspoon ground cumin
- 1 teaspoon turmeric
- 800 ml fish stock (or vegetable stock for a lighter flavour)
- 600 g (1.3 lb) haddock or other firm white fish, cut into large chunks
- Fresh coriander, chopped, to serve (or parsley)
Equipment
- Cast iron pan or large saucepan
- Wooden spoon
- Pestle and mortar (or a sealed bag and rolling pin to crush spices)
Instructions
- Chop the onions, red and yellow peppers and crush or finely dice the garlic.
- Heat the olive oil in a pan over medium heat. Add the onions, peppers and garlic and cook for 3–5 minutes until softened.
- Stir in the tinned tomatoes and cook for 5 minutes to combine the flavours.
- Grind the pickling spice mix in a pestle and mortar (or crush in a sealed bag). Add the ground pickling spice, turmeric and cumin to the pan and cook, stirring, for about 2 minutes to release their aroma.
- Pour in the fish stock, bring to the boil, then reduce to a simmer. Allow the soup to simmer gently for 30 minutes so the flavours meld and the broth thickens slightly.
- Chop the haddock into large chunks and add to the simmering soup. Cook for 8–10 minutes, stirring very gently so the fish remains in pieces.
- Serve hot with a generous sprinkle of fresh coriander and crusty bread for dipping.

Vegetables
The aromatic base of this soup relies on red onions and red and yellow bell peppers for sweetness and colour. Garlic adds a pungent depth that brings the other flavours together. You can use fresh tomatoes instead of tinned if preferred. For a thicker, stew-like texture, add extra vegetables such as potatoes, carrots or leeks.
Spices
The pickling spice mix is central to this recipe. It combines bay leaves, allspice, bird’s eye chillies, black peppercorns, cloves, ginger, coriander seeds, yellow mustard seeds and cassia cinnamon for a warm, complex profile. If you don’t have a ready-made mix, combine these whole spices and grind them before adding.
Turmeric and cumin contribute colour, warmth and an earthy depth to the broth.
Stock and Fish
Fish stock gives this soup its rich seafood backbone; vegetable stock can be substituted for a milder base. Use a firm white fish such as haddock, cod, sea bass, basa, tilapia or snapper so the pieces hold together while cooking. Frozen fish can be used if fully thawed before adding.

Fresh herbs
Finish the soup with chopped coriander leaves for brightness. Parsley is a fine alternative if you prefer.
Serving suggestions
Ladle into warmed bowls, top with fresh coriander and a grind of black pepper. Serve with crusty bread or a wholemeal loaf for dipping.

Storage and reheating
Once cooled, refrigerate the soup within two hours of cooking and use within three days. For longer storage, freeze in suitable containers—thaw overnight in the fridge before reheating. Reheat gently over low heat to avoid breaking up the fish.
Nutrition (per serving)
- Calories: 273 kcal
- Carbohydrates: 16 g
- Protein: 31 g
- Fat: 10 g (Saturated fat: 1 g)
- Fiber: 3 g • Sugar: 6 g
- Sodium: 967 mg • Potassium: 1081 mg
Health benefits of spices
This soup features spices with recognized health benefits: cumin (a source of iron and aids digestion), turmeric (anti-inflammatory properties), allspice and cloves (antioxidant and digestive benefits), chilli (rich in carotenoids and may aid circulation and metabolism), black pepper (aids digestion) and coriander (antibacterial and soothing to digestion). Garlic adds heart-healthy properties and may help lower LDL cholesterol.
These spices not only enhance flavour but also contribute vitamins, minerals and protective plant compounds, making this dish both tasty and nourishing.
More soup recipes
If you enjoyed this spicy fish soup, explore other comforting soups such as broccoli and stilton or carrot and coriander for more variety.

This recipe content was updated on 15/03/2025 to improve the user experience and presentation of the recipe card.