This aromatic soup combines tender white fish fillets with rich coconut milk for a silky, luxurious texture. Fresh lime juice and zest add brightness, while ginger, garlic, and vegetables build layers of flavor. Ready in just 35 minutes, this Southeast Asian-inspired bowl is both light and satisfying. The fish simmers gently in the fragrant broth, becoming perfectly tender without falling apart. Finish with fresh cilantro and green onions for a burst of color and freshness. Perfect served over steamed jasmine rice or rice noodles.
The first time I made this soup was on a rainy Tuesday when I needed something that felt like a warm hug but also transported me somewhere tropical. The combination of creamy coconut and bright lime creates this incredible tension in your mouth, rich yet refreshing at the same time. My kitchen smelled like heaven, and I knew immediately this would become my go-to comfort soup. Even my husband, who claims he is not a soup person, went back for seconds.
Last month my friend Sarah came over feeling under the weather, and I whipped this up without really thinking about it. She took one sip and literally said I feel better already, which is the best endorsement any soup could ever get. There is something about the fragrant ginger and coconut that feels medicinal in the most delicious way possible. Now she asks for it every time she visits, even when she is perfectly healthy.
Ingredients
- White fish fillets: Cod or halibut hold up beautifully without falling apart, but any mild white fish works perfectly here
- Coconut milk: Full-fat makes all the difference for that luxurious silky texture, do not skimp on this
- Fresh ginger: Grating it releases more flavor than chopping, and it creates this lovely warmth throughout the soup
- Fish sauce: Do not be intimidated by the smell, it adds this incredible depth that you cannot quite put your finger on
- Lime: Both juice and zest are essential because they provide different layers of brightness
Instructions
- Build your flavor base:
- Heat your largest pot over medium heat, add a splash of oil, and cook the onion until it turns translucent and smells sweet, about 3 minutes
- Add the aromatics:
- Throw in the garlic, ginger, celery, carrots, and bell pepper, letting everything cook together until the vegetables start to soften and your kitchen fills with amazing smells
- Create the broth:
- Pour in the fish stock and bring it to a gentle simmer, then stir in the coconut milk, fish sauce, soy sauce, sugar, salt, pepper, and chili if you like some heat
- Cook the fish:
- Gently slide in the fish pieces and simmer for 7 to 8 minutes, watching as the flesh turns opaque and flakes easily when tested with a fork
- Finish with brightness:
- Stir in the lime juice and zest, taste your creation, adjust any seasonings that need tweaking, then serve immediately
This soup became our anniversary dinner tradition three years ago when we were too broke to go out but wanted something special. We ate it by candlelight with crusty bread to soak up every last drop of the broth. It was honestly more romantic than any restaurant meal we have had, and now it is our thing.
Making It Your Own
I have discovered that adding a bruised stalk of lemongrass during the simmering phase takes this soup to restaurant quality levels. Just remember to fish it out before serving because nobody wants to chew on tough lemongrass fibers. The subtle citrusy note it imparts is absolutely worth the extra step.
Perfect Pairings
While this soup is substantial enough to stand alone, I love serving it over steamed jasmine rice for a more filling meal. The rice soaks up that creamy coconut broth and turns into something magical. A side of crispy spring rolls or Vietnamese summer rolls adds the perfect textural contrast.
Serving Suggestions
Presentation matters more than you might think with a soup this beautiful. I always reserve the most colorful slices of red bell pepper and green onion for the top, creating this vibrant contrast against the creamy white broth. The final sprinkle of fresh cilantro adds both color and a burst of herbaceous freshness.
- Set out extra lime wedges so everyone can adjust the brightness to their liking
- Serve with a spoon that has a nice wide bowl to catch all the tender fish pieces
- Have plenty of napkins ready because this is the kind of meal that demands slurping
There is something deeply satisfying about a soup that looks so elegant but comes together with such ease. I hope this recipe becomes part of your comfort food rotation like it has in mine.
Recipe Questions
- → What type of fish works best?
-
White fish fillets like cod, halibut, or tilapia are ideal because they hold their shape during simmering while remaining tender. Avoid delicate fish that might flake apart too easily.
- → Can I make this soup dairy-free?
-
Absolutely. This soup uses coconut milk instead of dairy cream, making it naturally dairy-free. Just ensure your soy sauce is gluten-free if needed.
- → How spicy is this soup?
-
The base version is mild with just a hint of heat from the optional red chili. Adjust the spice level by adding more fresh chili or omitting it entirely for a family-friendly version.
- → Can I substitute the fish?
-
Shrimp works beautifully and cooks even faster. For a vegetarian version, firm tofu cubes absorb the flavorful broth beautifully. Add tofu during the last 5 minutes to warm through.
- → What should I serve with this soup?
-
Steamed jasmine rice or rice noodles make this a more substantial meal. The neutral grains soak up the fragrant broth beautifully. Crusty bread also works for dipping.
- → How long does this soup keep?
-
Store refrigerated for up to 2 days. The fish may become slightly softer when reheated, but the flavors actually improve. Reheat gently over low heat to avoid overcooking the fish.