Cambodian fish noodle soup, often called num banh chok, pairs rice noodles with a fragrant fish gravy scented with lemongrass, galangal, turmeric, and herbs. Versions differ by region and household; this approachable bowl keeps the broth light, then lets crisp vegetables, fresh herbs, and lime bring contrast at the table.
Ingredients
- 14 oz (400 g) dried rice vermicelli, or 1½ lb (680 g) fresh rice noodles
- 1 lb (450 g) boneless white fish fillets, such as catfish, cod, or tilapia
- 7 cups (1.65 L) water
- 1 tbsp (15 ml) neutral oil
- 1 tbsp (15 g) prahok, optional; see the substitution note below
- 2 tbsp (30 ml) fish sauce, plus more to taste
- 1 tsp (4 g) granulated sugar
- ½ tsp (2.5 g) fine salt, plus more to taste
- 4 makrut lime leaves (about 1 g), torn, or 1 tsp (2 g) finely grated lime zest
- 2 stalks lemongrass (about 60 g), tough ends and outer layers removed, thinly sliced
- 1½ oz (40 g) galangal, peeled and thinly sliced; substitute ginger if needed
- 1 oz (28 g) fresh turmeric, peeled and sliced, or 1 tsp (3 g) ground turmeric
- 2 medium shallots (about 60 g), peeled and roughly chopped
- 4 garlic cloves (about 12 g), peeled
- 2 tbsp (30 ml) water, as needed to help blend the aromatics
- 1 medium cucumber (about 300 g), cut into thin matchsticks
- 2 cups (100 g) bean sprouts, rinsed and drained
- 2 cups (70 g) thinly sliced green cabbage, or shredded banana blossom if available
- 1 cup (25 g) fresh mint leaves
- 1 cup (25 g) fresh Thai basil leaves, or regular basil
- 4 lime wedges (about 120 g total), for serving
- 1 small red chile (about 10 g), thinly sliced, optional
Instructions
- Make the aromatic paste (15 minutes). Add the lemongrass, galangal, turmeric, shallots, garlic, and 2 tablespoons water to a blender or small food processor. Blend, scraping down the sides as needed, until the mixture is as smooth as possible. Add another teaspoon of water only if the blades cannot catch. A traditional mortar and pestle works too; pound the tougher lemongrass and galangal first, then add the shallot and garlic. The paste does not have to be perfectly silky, but smaller pieces give the broth a more even texture.
- Prepare the toppings (12 minutes). Cut the cucumber into matchsticks, slice the cabbage, rinse and drain the bean sprouts, and pick the mint and basil leaves from their stems. Arrange them on a platter with the lime wedges and optional chile. If using banana blossom, slice it very thinly just before serving and keep it in cold water with a squeeze of lime to limit browning. Set out bowls and serving spoons so the noodles can be assembled promptly later.
- Finish the mise en place (8 minutes). Measure the water, fish sauce, sugar, salt, oil, and optional prahok. Check the fish for pin bones and cut very thick fillets into two or three similar-sized pieces so they cook evenly. Keep the fish refrigerated until you are ready to poach it. If using dried noodles, leave them ready beside the stove; you will cook them near the end according to their package directions.
- Cook the paste (5 minutes). Heat the oil in a medium pot over medium heat. Add the aromatic paste and stir continuously for about 5 minutes, lowering the heat if it starts to brown. The paste should smell fragrant and lose its raw, sharp aroma; browning it hard can make the lemongrass and turmeric taste bitter. Stir in the prahok now if using, breaking it up so it disperses through the paste.
- Build the broth (20 minutes). Pour in the water, then add the torn makrut lime leaves, fish sauce, sugar, and salt. Bring the pot just to a boil, stirring to loosen any paste from the bottom, then lower the heat and simmer gently for 20 minutes. Keep the broth at a quiet simmer rather than a rolling boil. Taste it: it should be savory and aromatic, with enough salt to stand up to plain noodles and fresh vegetables. Add a little more fish sauce or salt if needed.
- Poach the fish (10 minutes). Lower the fish pieces into the simmering broth. Cook gently for about 8 to 10 minutes, turning once if needed, until opaque and easily flaked. Check the thickest piece with a food thermometer; USDA FSIS lists 145°F (63°C) as the safe minimum internal temperature for fish. Lift the fish onto a plate, break it into large flakes with a fork, and return it to the broth. If the broth has boiled vigorously, let it settle to a gentle simmer before adding the fish, which helps keep the pieces intact.
- Cook and drain the noodles (7 minutes, or package time). While the fish poaches, cook dried rice vermicelli in a separate pot of boiling water following the package directions; thin vermicelli often takes only a few minutes. Drain and rinse briefly with cool water to stop the cooking and remove excess starch. If using fresh rice noodles, warm them according to the package directions, usually by briefly dipping them in hot water. Avoid leaving noodles sitting in their cooking water, where they can turn soft and clump.
- Assemble and serve (3 minutes). Divide the drained noodles among four bowls. Ladle the hot fish broth and flakes over each portion, then add cucumber, bean sprouts, cabbage, mint, and basil. Let everyone squeeze lime over the bowl and add chile to taste. The vegetables are meant to remain crisp, so add them just before eating rather than simmering them in the pot.
Tips
- Choose a fish that holds together. Catfish is a common practical choice for a gently poached fish broth, while cod or tilapia also work. Very delicate fillets can break into tiny pieces; cut the fish into generous portions and avoid stirring once it is in the pot.
- Know what prahok contributes. This fermented fish paste gives the gravy a deeper, distinctly savory character, but it can be difficult to find and its intensity varies. If unavailable, leave it out and add fish sauce a teaspoon at a time; the broth will be cleaner and less funky, but still flavorful. Taste before adding extra salt.
- Use ginger only as a fallback for galangal. Fresh galangal has a sharper, piney citrus aroma than ginger. Ginger makes a pleasant soup but changes the flavor, so use the same amount and lean on lemongrass and lime leaves to keep the broth bright. Dried ground galangal is less vivid; use about 1 teaspoon (2 g) if that is what you have.
- Keep noodles and broth separate until serving. Rice noodles continue absorbing liquid and become swollen if stored in the soup. Rinsing drained noodles briefly helps keep them from sticking, and separate bowls or containers make leftovers much easier to reheat well.
Serving Suggestions
Serve the soup hot with the bowls of raw vegetables and herbs on the table so each person can choose the balance they like. A generous handful of bean sprouts and cucumber cools the warm, savory broth, while mint, basil, and lime add a fresh, fragrant finish. If you enjoy heat, offer sliced chile separately rather than adding it to the whole pot; that keeps the soup comfortable for people who prefer a milder bowl.
For a fuller meal, put extra noodles and toppings within reach and let guests build second portions without diluting the broth in the cooking pot. A simple side of sliced cucumber or a small plate of additional herbs fits naturally. The soup already has noodles, fish, and vegetables, so it does not need a heavy accompaniment. Serve lime wedges at the end rather than squeezing all the juice into the broth in advance, since individual bowls can be adjusted to taste.
Variations
There is no single fixed household version of Cambodian fish noodle soup. Some cooks make a more robust gravy, use different local fish, or include fermented fish paste; the amount of aromatics and the vegetables at the table also vary. This recipe uses water for a light broth that lets the kroeung—the aromatic blend of lemongrass, galangal, turmeric, shallot, and garlic—remain clear. For a richer result, replace 2 cups (475 ml) of the water with unsalted fish stock, then taste before adding more salt because stock can already be seasoned.
Banana blossom is a traditional-style topping in some preparations, but it is not always easy to find. Thinly sliced cabbage is a convenient substitute with a mild crunch; it is less floral and slightly sweeter. For a different noodle texture, use fresh rice noodles instead of dried vermicelli and warm them briefly rather than boiling them for the full dried-noodle time. If you cannot find makrut lime leaves, a small amount of finely grated lime zest adds citrus aroma, though it lacks the leaves’ more complex perfume.
You can also adjust the fish texture. For larger flakes, poach the fillets whole and break them up gently at the end. For a more evenly distributed fish flavor, flake the cooked fish more finely and stir it through the broth. Either way, do not substitute raw fish added at the table: the fish in this soup should be cooked in the broth and checked for the safe temperature stated in the instructions.
Storage and Reheating
For food safety, refrigerate cooked fish, broth, and noodles within 2 hours of cooking. Store the broth with the fish in one airtight container and the noodles and fresh toppings separately. The cooked soup components keep for 3 to 4 days in the refrigerator; the herbs and cut vegetables are best used within 1 to 2 days, since they lose crispness. Do not store the fresh toppings submerged in the broth.
Reheat only the amount of broth and fish you plan to eat, bringing it to 165°F (74°C) as measured with a food thermometer; USDA FSIS recommends this temperature for reheated leftovers. Warm noodles separately in hot water for a few seconds, drain, then ladle the hot broth over them. Add fresh herbs and vegetables after reheating. The broth and fish can be frozen in a freezer-safe container for up to 2 months for best quality, but freeze noodles separately if possible; thaw overnight in the refrigerator and reheat thoroughly.
Frequently Asked Questions
Is num banh chok the same as Cambodian fish noodle soup?
Num banh chok is a name associated with Cambodian rice-noodle dishes, including versions served with a fish-based gravy. Recipes and naming can vary, and some noodle soups have different broths or toppings. This recipe uses the name for a bowl of rice noodles with aromatic fish broth and fresh vegetables.
Can I make the broth ahead?
Yes. Cook the broth and fish, cool them promptly, and refrigerate them separately from the noodles and toppings for up to 3 to 4 days. Reheat the broth and fish to 165°F (74°C), then cook or warm the noodles and assemble fresh bowls. Keeping these parts apart protects the noodles’ texture.
Can I use frozen fish?
Yes. Thaw it safely in the refrigerator, remove any excess surface moisture, and check for pin bones before cooking. Frozen fillets may release a little more water as they poach, so rely on the thermometer rather than the clock alone and season the broth after the fish is cooked.
What can I use instead of prahok?
Fish sauce is the easiest substitute, and this recipe already includes it. Omit the prahok and taste the broth before adding extra fish sauce, since too much can make it overly salty. The result will lack some of the fermented depth of prahok but will still have a well-seasoned fish and lemongrass flavor.
How do I keep the noodles from getting mushy?
Cook them only until tender, drain them promptly, and keep them out of the broth until each bowl is served. Dried and fresh rice noodles cook at different speeds, so follow the package timing and check a strand early. For leftovers, store noodles separately and warm them briefly in hot water.
Can I make this soup less spicy?
The broth itself is mild; the optional sliced chile supplies most of the heat. Leave it off the platter or serve it on the side so each person can choose. For a brighter bowl without chile, add extra lime juice and herbs at the table.
Related
- Cajun Bean Soup with Andouille Sausage
- Cajun Bean Soup Mix for a Flavorful, Hearty Pot
- Cajun Beef Stew With Roux for a Rich, Spicy Supper
More recipes to cook
Safety notes: safe minimum internal temperatures from USDA FSIS; raw and undercooked fish guidance from the U.S. FDA. Food safety notes
Spotted an error? Tell us and we will correct it (corrections policy).