Zesty Thai Tom Yum-Style Soup with Fresh Herbs, Green Onions, and Bean Sprouts

Tom yum–style soup is all about contrast: aromatic lemongrass, savory depth, and a sharp squeeze of lime—rounded out with tender mushrooms and a fresh herb topping. This weeknight-friendly version keeps the steps simple and leaves room for your preferred protein and spice level.
Recipe at a glance
- Yield: 4 servings
- Prep time: 15 minutes
- Cook time: 20 minutes
- Total time: 35 minutes
Ingredients
For the soup
- 1 tablespoon neutral oil (or sesame oil)
- 1 small onion, thinly sliced
- 3 cloves garlic, minced
- 1 tablespoon fresh ginger, grated
- 2 stalks lemongrass, pale part only, bruised and chopped (or 1 tablespoon lemongrass paste)
- 1–2 tablespoons Thai chili paste (optional) or chili crisp, to taste
- 6 cups low-sodium chicken or vegetable broth
- 3 tablespoons fish sauce (see variation for non-fish options)
- 2 tablespoons soy sauce or tamari (optional, for extra savory depth)
- 2 cups mushrooms, sliced (button, cremini, or shiitake)
- 1/2 cup cherry tomatoes, halved (optional)
- 2 tablespoons lime juice, plus more to taste
- 1 teaspoon brown sugar (optional, balances tang)
- Kosher salt, to taste
For finishing
- 1/2 cup fresh cilantro and/or Thai basil leaves, chopped (use what you have)
- 3 green onions, thinly sliced
- 1 cup bean sprouts
- Lime wedges for serving
- Cooked shrimp or cooked shredded chicken (optional, about 1 to 1 1/2 cups), see protein note below
Protein note (optional): If you want shrimp or chicken in the soup, add it near the end (when using already cooked protein) or cook fully (if using raw). This recipe is designed to finish with aromatics and herbs so they stay bright.
Instructions
- Sauté the aromatics. In a large pot over medium heat, warm the oil. Add onion and cook 3–4 minutes until softened. Stir in garlic, ginger, and lemongrass; cook 1 minute until fragrant.
- Build the tom yum-style base. Stir in chili paste (if using) and cook 30 seconds. Pour in broth and bring to a simmer.
- Season. Add fish sauce and soy sauce (if using). Simmer 5 minutes so the flavors meld. Taste and adjust with a small pinch of sugar if the tang needs rounding.
- Cook the mushrooms (and tomatoes, if using). Add mushrooms (and cherry tomatoes). Simmer 6–8 minutes, until mushrooms are tender and the broth is actively simmering but not boiling hard.
- Finish with lime. Turn heat to low. Stir in lime juice and taste. Add a little more lime juice if you want it brighter, or a pinch of salt if flavors seem muted.
- Add optional protein (if using). If using raw shrimp, add now and simmer just until pink and cooked through (about 2–3 minutes). If using cooked chicken or shrimp, heat gently in the soup for 1–2 minutes—no hard boil.
- Add toppings at the end. Ladle soup into bowls. Top each serving with bean sprouts, green onions, and herbs. Serve immediately so sprouts stay crisp and herbs taste fresh.
Texture/doneness cues: Mushrooms should feel tender when pressed with a spoon, but not mushy. The soup should be at a gentle simmer when you add lime—aim for lively flavor, not a rolling boil that dulls aromatics.
Tips
- Make it vegetarian: Swap fish sauce with soy sauce or tamari plus 1–2 teaspoons mushroom-flavored seasoning (or use a vegetarian “fish sauce” style product). Choose vegetable broth and add a little extra lime to keep it punchy.
- Control spice: Start with 1 tablespoon chili paste and add more after tasting.
- Boost aroma: If you’re using real lemongrass stalks, bruise them well (press with the back of a knife) so more flavor releases.
- Keep herbs fresh: Add cilantro/basil, green onions, and bean sprouts right before serving rather than simmering them.
Serving ideas
- Serve with steamed jasmine rice for scooping up every bit of broth.
- For a heartier bowl, add cooked rice noodles to each bowl (not the whole pot) so the noodles don’t over-soften.
- Offer extra lime wedges and a small dish of chili crisp for guests who want more heat.
Storage notes
- Cool quickly: Let soup cool at room temperature no more than 1–2 hours, then refrigerate in a shallow container.
- Refrigerate: Store leftover soup (without the fresh toppings) for up to 3 days.
- Reheat gently: Warm until steaming hot. Avoid boiling vigorously; a gentle heat helps preserve the lemongrass-and-lime aroma.
- Fresh toppings: Keep bean sprouts and herbs separate. Add them to bowls after reheating for best texture.
For safe food handling, follow the core “Clean, Separate, Cook, Chill” guidance from FoodSafety.gov and the CDC—especially when reheating leftovers and keeping soup from sitting at room temperature.
