This traditional Vietnamese soup combines the perfect balance of sweet, sour, and savory flavors. Tender white fish and optional shrimp simmer alongside juicy pineapple, tomatoes, and okra in a tamarind-infused broth. Fresh herbs like Thai basil, sawtooth coriander, and cilantro add bright aromatic notes that make each bowl refreshing and satisfying. Ready in just 40 minutes, this gluten-free dish pairs beautifully with steamed jasmine rice.
The first time I had Canh Chua was at my aunt's house in Saigon during rainy season. Something about that hot, tangy broth cutting through the humid air made perfect sense. I've been chasing that memory ever since, tweaking the balance until it felt like coming home.
Last winter, my friend Mai came over with a bag of fresh okra from her garden. We made this soup together while rain tapped against the kitchen window. She taught me that the secret is adding each ingredient at the right moment, so nothing turns to mush and everything keeps its personality.
Ingredients
- 500 g white fish fillets: Catfish or basa hold up beautifully in the hot broth without falling apart, but any mild white fish works
- 8 large shrimp: Completely optional, but they add that sweet ocean depth that makes Vietnamese soup sing
- 2 medium tomatoes: Look for ones that still have some firmness, otherwise they'll dissolve into the soup
- 1 small pineapple: Fresh pineapple makes all the difference here, canned is too sweet and lacks that bright acidity
- 150 g bean sprouts: Add these at the very end so they stay crisp and refreshing
- 150 g okra: Slice them on a diagonal for prettier presentation and better texture
- 2 stalks celery or elephant ear stem: If you can find bạc hà at an Asian market, it adds this lovely subtle licorice note
- 2 cloves garlic: Mince these finely so they dissolve into the broth instead of leaving chunks
- 1 small onion: Slice them thin so they become sweet and translucent as they cook
- 2 birds eye chilies: Leave the seeds in if you like heat, take them out if you prefer gentle warmth
- 1.5 liters water or fish stock: Homemade fish stock is incredible, but water works perfectly fine with all these bold flavors
- 3 tablespoons fish sauce: This is your salt source, so taste as you go and adjust accordingly
- 2 tablespoons tamarind paste: The soul of this soup, that perfect sour note that makes your mouth water
- 1 tablespoon sugar: Just enough to round out all the tangy and salty elements
- 1 teaspoon salt: Start with less if using fish stock instead of water
- ½ teaspoon ground black pepper: Freshly ground makes a huge difference here
- 20 g fresh Thai basil leaves: Don't substitute with sweet basil, the anise flavor is essential
- 20 g sawtooth coriander: Hard to find but worth seeking out at specialty markets for that authentic taste
- 10 g fresh cilantro: Adds brightness and color at the very end
- Lime wedges: Essential for squeezing over right before eating, that final hit of acid
Instructions
- Build your flavor foundation:
- Heat a splash of oil in your large pot over medium heat and sauté the garlic and onion until your kitchen fills with that irresistible fragrance, about 2 minutes.
- Create the broth base:
- Pour in your water or fish stock, then stir in the tamarind paste, fish sauce, sugar, and salt until everything dissolves.
- Bring it to life:
- Let the broth come to a gentle boil, watching as it turns a beautiful amber color from the tamarind.
- Add the hearty vegetables:
- Toss in the pineapple, tomatoes, okra, celery (or elephant ear stem if you scored some), and chilies.
- Let them get comfortable:
- Simmer for 5 to 7 minutes until the vegetables are just tender but still have some bite to them.
- Introduce the seafood:
- Gently lower in your fish chunks (and shrimp if you're using them) and let them simmer for another 5 to 7 minutes.
- Watch closely now:
- The fish will turn opaque and flake easily when it's done, and shrimp will curl up and turn pink.
- Add the fresh elements:
- Stir in the bean sprouts and cook for just 1 minute, keeping them crunchy and vibrant.
- Taste and adjust:
- This is crucial, take a spoonful and add more fish sauce for salt, sugar for sweet, or lime juice for sour until it hits that perfect balance.
- Finish with herbs:
- Remove from heat and gently fold in the Thai basil, sawtooth coriander, and cilantro.
- Serve it up:
- Ladle hot into bowls and pass extra herbs and lime wedges so everyone can customize their own.
My grandmother used to say that a good Canh Chua should make you sweat a little, that's how you know the flavors are working. Now every time I serve this to friends, I watch their faces light up at that first spoonful, that moment when all the layers hit at once.
Getting The Balance Right
Vietnamese cooking is all about the interplay of flavors, and this soup is the perfect example. The magic happens when sweet, sour, salty, and sometimes spicy all show up to the party in harmony.
Making It Your Own
Don't stress if you can't find elephant ear stem, regular celery works perfectly fine. Some cooks add bamboo shoots for extra crunch, and I've even seen versions with lotus stems.
Serving Suggestions
A steaming bowl of this soup alongside fluffy jasmine rice is my idea of perfection. Some people pour it directly over rice in their bowl, creating this wonderful comforting porridge-like situation.
- Keep the fish pieces relatively large, they'll shrink slightly as they cook
- Prep all your ingredients before you start cooking, this comes together fast
- Make extra broth, it freezes beautifully for those nights you need something warming
There's something deeply satisfying about a soup that clears your sinuses and warms your soul simultaneously. Hope this recipe becomes part of your kitchen story too.
Frequently asked questions about this recipe
- → What does Canh Chua mean?
-
Canh Chora translates to 'sour soup' in Vietnamese, referring to the signature tangy flavor from tamarind paste that balances the sweet pineapple and savory fish elements.
- → What fish works best for this soup?
-
White fish fillets like catfish, tilapia, or basa are ideal because they hold their shape during simmering and absorb the flavors beautifully without falling apart.
- → Can I make this vegetarian?
-
Absolutely. Substitute firm tofu cubes for the fish and use vegetable or mushroom stock instead of fish stock. The tamarind and vegetables still create a delicious, flavorful broth.
- → How do I adjust the sourness level?
-
Control the tanginess by varying the amount of tamarind paste or adding fresh lime juice at the end. Start with less and gradually increase until you reach your preferred balance.
- → What should I serve with Canh Chora?
-
Steamed jasmine rice is the classic accompaniment, though vermicelli noodles also work well. The rice helps soak up the flavorful broth and balances the tangy flavors.
- → How long does this soup keep?
-
Store in an airtight container in the refrigerator for up to 3 days. Reheat gently on the stovetop, adding fresh herbs right before serving to maintain their bright flavor and color.