
Tomato Fish Fillet Soup is a classic home-style soup. The fish fillets are tender and boneless, while the tomatoes are cooked down into a rich, tangy broth. Every sip of soup and every bite of fish warms you from the inside out. It’s perfect when you have no appetite or want something light and refreshing.

🌴 Ingredients:
· 200g fish fillets (snakehead, sole, or basa, thinly sliced, boneless)
· 2 tomatoes (ripe, for a richer broth)
· 1 egg (use egg white only, for marinating the fish)
🌴 Aromatics:
· A small piece of ginger (minced)
· 3-4 cloves garlic (minced)
· 1 stalk scallion (chopped, for garnish)
· Cilantro, to taste (cut into sections, for garnish, optional)
🌴 Seasonings:
· 1 tbsp ketchup (about 15g, for color and tang)
· 1 tbsp cooking wine (about 10ml, for marinating)
· 1 tsp cornstarch (about 5g, for marinating, locks in moisture)
· 1/2 egg white (for marinating, makes it tender)
· 3g salt (about a teaspoon, divided)
· A pinch of white pepper powder
· Cooking oil, as needed
🌴 Instructions:
- Marinate the Fish
Wash and drain the fish fillets. Add the cooking wine, half an egg white, cornstarch, a pinch of salt, and white pepper. Mix well and marinate for 15 minutes. ⚠️ Note: This keeps the fish tender and prevents it from breaking apart. I’ve tried cooking it without marinating, and it fell apart into a mushy mess. - Prepare the Tomatoes
Score a cross on the top of each tomato and blanch in boiling water for 1 minute. Peel and cut into small pieces. ⚠️ Note: Peeling the tomatoes makes the broth richer and smoother. I’ve tried leaving the skin on, and the soup was full of curled tomato skins. - Cook the Tomatoes
Heat oil in a pan, add the minced ginger and garlic, and stir-fry over low heat until fragrant. Add the tomato pieces and stir-fry over medium heat until they release their juice and red oil. Add the ketchup and a pinch of salt. ⚠️ Note: Make sure to cook the tomatoes until they release their juice for a rich broth. I’ve tried adding water too early, and the soup tasted bland. - Simmer the Broth
Add plenty of hot water and bring to a boil. ⚠️ Note: Always use hot water; cold water will lock in the sourness and make the soup taste flat. - Add the Fish
Keep the heat high. Add the marinated fish slices one by one, gently separating them with chopsticks. Cook for 1-2 minutes until they change color and curl slightly. ⚠️ Note: Add the fish last and cook for only 1-2 minutes, or it will fall apart. I’ve tried dumping it all in at once, and it clumped together, raw on the inside. - Season and Serve
Add salt to taste and a pinch of white pepper. Turn off the heat, sprinkle with scallion and cilantro, and serve hot. ⚠️ Note: Add salt at the very end to keep the soup fresh. The fish is already marinated with salt, so taste before adding more.

💡 More Nourishing Soups:
If you enjoy this tangy and savory fish soup, you should also try my [Tomato and Egg Soup] for another quick and comforting classic.
Want to explore more? Check out my full [Soups] category!

💡 Tips:
Marinate the fish with egg white and cornstarch for a tender texture. Peel the tomatoes and cook them until they release their juice for a rich broth. Always use hot water for the soup. Add the fish one by one and cook for just 1-2 minutes. Add salt at the very end for the best flavor.
❤️ Click the homepage for more delicious recipes!