Soups & Stews
This beef tom yum soup recipe delivers the perfect balance of tender beef, bright citrus, and aromatic Thai spices in every steaming bowl. 🔥 The secret lies in simmering lemongrass, galangal, and kaffir lime leaves to create a fragrant broth that builds flavor as it cooks.
I've perfected this version to achieve restaurant-quality results at home—bold, tangy, and deeply satisfying. What sets this recipe apart is the technique for cooking the beef just right: thin slices seared briefly to lock in juiciness before simmering gently in the broth.
Traditional ingredients like fish sauce and lime juice provide that signature tangy-spicy kick, while mushrooms add earthy depth. The broth should be vibrant, aromatic, and just spicy enough to make your taste buds dance.
By the time you're done, you'll have a steaming bowl of soup with tender beef that practically melts in your mouth, surrounded by fragrant broth and fresh herbs. The aroma alone will have everyone gathering around the table.
This recipe is designed to be both authentic and approachable, so you can enjoy the flavors of Thailand without the complexity. Serve it with steamed jasmine rice to soak up every last drop of that flavorful broth, and garnish with fresh cilantro and lime wedges for brightness.
Let's make this soup!
Ingredients for beef tom yum soup
These aromatic ingredients transform into a steaming bowl of restaurant-quality beef tom yum.
| Ingredient | Amount | Notes |
|---|---|---|
| Thinly Sliced Beef Sirloin 🥩 | 1 lb | Cut against grain for tenderness |
| Lemongrass Stalks 🌿 | 3 whole | Bruised and cut into 2-inch pieces |
| Galangal Root 🍃 | 3 oz | Peeled and sliced thinly (or sub ginger) |
| Kaffir Lime Leaves 🍋 | 4 whole | Bruised and torn in half (or sub lime zest) |
| Shiitake Mushrooms 🍄 | 8 oz | Stems removed, whole or halved |
| Fish Sauce 🍶 | 2 tbsp | Red Boat brand preferred |
| Lime Juice 🍋 | ½ cup | Freshly squeezed, about 3-4 limes |
| Thai Chili Paste 🌶️ | 1 tbsp | Adjust for spice preference |
| Chicken Stock 🍲 | 4 cups | Homemade or quality low-sodium |
| Coconut Milk 🥥 | ½ cup | Full-fat for creaminess |
| Garlic Cloves 🧄 | 4 cloves | Minced for aromatic depth |
| Fresh Cilantro 🌿 | ¼ cup | Chopped for garnish (stems too) |
| Brown Sugar 🍯 | 2 tbsp | Light or dark works |
| Sea Salt 🧂 | 1 tsp | Diamond Crystal preferred |
| Black Peppercorns 🌶️ | ¼ tsp | Crushed lightly |
The galangal and kaffir lime leaves are non-negotiable for authentic flavor—Asian markets have the freshest, but if you can't find them, ginger plus extra lime zest gets you close. For the beef, sirloin or flank steak works best—pound it thin for quick cooking. I always grab Red Boat fish sauce from the Asian aisle (or Thai Kitchen brand if you're in a pinch), but any quality fish sauce will do. The shiitake mushrooms add earthy depth, so don't skip them—fresh or rehydrated dried both work, but fresh has better texture.
No galangal? Ginger plus a splash of lime juice mimics its peppery kick. Running low on fish sauce? Soy sauce plus a pinch of sugar (half the amount) works in a bind. The coconut milk is just for creaminess—if you're avoiding dairy, full-fat coconut milk is naturally vegan. For spice control, taste the chili paste first—some brands are hotter than others. The brown sugar balances the acidity, but white sugar works too. Pro tip: Bruise the lemongrass and galangal with the side of your knife before adding—releases more flavor.
This soup tastes even better the next day as flavors meld. Store in an airtight container in the fridge for up to 4 days, or freeze for 3 months (portion into single servings first). I always make a double batch—leftover broth freezes perfectly for quick meals later. Garnish with fresh cilantro and lime wedges right before serving (the acidity brightens everything). Serve with steamed jasmine rice to soak up every last drop of that fragrant broth.
Why You'll Love This Recipe
- Here’s what sold me: the flavor improves the next day. The galangal and lime leaves mellow into the broth, and the beef gets even more tender. I make a double batch, freeze half, and thaw it for a 10-minute lunch. Zero waste, zero fuss.
- No Knife Skills Needed: Honestly, the hardest part is slicing the beef thin—if you even do that. I grab pre-sliced sirloin from the grocery store’s Asian section, toss in whole lemongrass stalks (no chopping), and let the galangal and mushrooms handle the texture work. Five minutes of prep, and you’re basically done.
- Tangy Heat in Minutes: That first sip? Chef’s kiss. The galangal and lime leaves give it this bright, herbal punch, while the shiitakes add meaty depth—no heavy cream, no blandness. The beef stays tender but snappy, and the broth? It’s dangerously easy to drink straight from the bowl.
- Date Night or Lazy Sunday: Between us, this soup works for everything. Drizzle it over rice for a quick weeknight dinner, or serve it in bowls with lime wedges for when your friend drops by unannounced. Even my picky teen asks for seconds—(yes, even on a Tuesday night).
Step-by-step instructions for spicy lime-kissed beef tom yum soup
Here's how to build this vibrant soup with layers of heat, brightness, and umami.
🍳 Step 1: Build the Aromatic Base
Heat a large pot over medium-high heat and add the 4 cups chicken stock. While it warms, bruise the 3 lemongrass stalks by pounding them gently with the side of a knife, then cut into 2-inch pieces. Add these along with the 3 oz peeled galangal root (sliced thinly), 4 whole kaffir lime leaves (torn in half), and 4 cloves minced garlic.
Bring the broth to a gentle simmer and let it cook uncovered for 10 minutes until the aromatics infuse deeply. You'll smell that signature Thai herbal punch—this is where the magic begins. The galangal and lemongrass should soften slightly but not disintegrate. Here's the thing—don't rush this step. The longer these aromatics steep, the more complex your broth will taste.
🔥 Step 2: Cook the Beef and Mushrooms
Add the 1 lb thinly sliced beef sirloin and 8 oz shiitake mushrooms (stems removed) to the simmering broth. Stir gently to distribute the meat and mushrooms evenly. Let it cook for 5-6 minutes until the beef turns opaque and the mushrooms soften but still hold their shape.
Here's where you'll notice the beef transforming—it should become tender and slightly translucent at the edges. If you see any scum forming on the surface, skim it off with a ladle. The mushrooms will release their earthy flavors into the broth, creating that perfect umami foundation. Don't overcook the beef or it'll turn tough—you want it tender but still with a slight bite.
🍳 Step 3: Season and Balance the Flavors
Reduce heat to medium-low and stir in the 2 tbsp fish sauce, 2 tbsp brown sugar, 1 tbsp Thai chili paste, and 0.5 cup lime juice. Taste the broth carefully—this is where you'll adjust the balance. The soup should sing with bright acidity, salty umami, and a lingering heat from the chili paste.
I like to add the coconut milk now, but stir it in gently so it doesn't curdle. You want just a whisper of creaminess to round out the sharp flavors. If the broth tastes too acidic, add a pinch more brown sugar. Too salty? A splash of lime juice helps balance it. This is your chance to fine-tune—every bowl should be perfectly balanced between sweet, sour, salty, and spicy.
⏰ Step 4: Finish and Serve
Let the soup simmer gently for another 3-4 minutes to allow all the flavors to meld together. The broth should be vibrant and aromatic, with the beef and mushrooms floating in a fragrant liquid. Taste one final time and adjust seasoning if needed—this is your last chance.
Remove from heat and let it sit for 5 minutes before serving. This resting period lets the flavors settle and the broth thicken slightly. Ladle into bowls and garnish with 0.25 cup chopped fresh cilantro and a sprinkle of crushed black peppercorns. Serve immediately with steamed jasmine rice to soak up every last drop of that glorious broth.
Pro Tips For Making Beef Tom Yum Soup
- BLANCH GALANGAL FIRST: I learned this the hard way—grating raw galangal straight into the pot leaves a bitter, muddy flavor. Instead, slice it thin and blanch in boiling water for 30 seconds to mellow its sharpness. Drain and pat dry before adding to the broth, or your soup will taste like oversteeped tea.
- SLICE BEEF AGAINST THE GRAIN: Thinly sliced beef sirloin is tricky—if you cut with the grain, it turns to mush. Angle your knife at 45 degrees and slice perpendicular to the muscle fibers for chewy, fork-tender strips. A sharp knife and quick strokes matter more than you’d think.
- CRUSH LEMONGRASS STALKS: Whole lemongrass stalks release flavor like a teabag—too little, too late. Split each stalk lengthwise and give it a few firm whacks with the flat side of your knife to bruise the pith. This sends oils into the broth immediately, not after 20 minutes of simmering.
- SIMMER LOW AND LONG: Tom yum needs time to develop depth, not a fast boil. Once everything’s in, reduce to a gentle simmer—tiny bubbles, occasional swirls—and let it cook uncovered for 20-25 minutes. Skim any foam that rises, or your broth will cloud up. Patience here makes the difference.
Storing and reheating this beef tom yum soup
Refrigerator Storage
Let your beef tom yum soup cool completely before transferring to airtight containers—I use glass Pyrex with snap-on lids for best results. Store in the fridge at 40°F or below for up to 4 days, but honestly?
It tastes even better the next day as the flavors meld together. The broth will thicken slightly, and the aromatics deepen. 🥣
Freezer Storage
For longer storage, portion the soup into single-serving freezer bags (quart size works best) or glass containers with 1-inch headspace to prevent expansion cracks. Freeze for up to 3 months—the beef and mushrooms hold up beautifully, though the texture might be slightly softer after thawing.
I always label with the date to track freshness. ❄️
Thawing Safely
Thaw overnight in the fridge for the best texture. If you're in a hurry, place the sealed container in cold water, changing the water every 30 minutes until fully thawed.
Never microwave from frozen—it creates uneven heating and can turn the broth rubbery. Once thawed, reheat gently on the stove. 💡
Reheating Methods
Stovetop reheating preserves the best texture: Simmer over medium-low heat for 8-10 minutes, stirring occasionally. Add 2-3 tablespoons of water or chicken stock if the broth looks too thick.
For microwave reheating, use 50% power in 2-minute intervals, stirring between each interval until steaming hot. Always check the internal temperature reaches 165°F.
Reviving Flavor
After reheating, the soup might need a brightness boost. Add 1 tablespoon of lime juice or a pinch of fish sauce to restore that signature tang. Fresh cilantro and a sprinkle of black peppercorns also work wonders for garnishing.
The soup should still be vibrant and aromatic—just like the day you made it. 🌟
Broth Boosting
If the broth seems dull after reheating, strain out the aromatics (lemongrass, galangal, lime leaves) and return the broth to the pot. Add 1 tablespoon of Thai chili paste and ½ cup fresh chicken stock, then simmer for 5 minutes to revive the depth.
This trick works like magic for leftover soup that's lost some of its punch. 🔥
Nutrition facts
Frequently asked questions
Can I make this beef tom yum soup without galangal?
Galangal adds that signature peppery kick, but fresh ginger works perfectly as a substitute. Use 1.5 inches of ginger (about 1 oz) for every 3 oz of galangal in the recipe. For extra authenticity, add 1 teaspoon of lime zest to mimic galangal's citrusy depth. The flavor won't be identical, but you'll still get that aromatic punch.
How can I adjust the spice level for kids or sensitive eaters?
Start by reducing the Thai chili paste to just ½ teaspoon instead of 1 tablespoon. For extra mildness, omit it entirely and add ½ teaspoon of sugar to balance the acidity. Serve the chili paste on the side so everyone can add their own heat. The soup will still pack flavor without the burn!
Why does my broth look cloudy or have scum on top?
Cloudiness or scum usually means the broth needs more time to clarify. Skim off any foam with a ladle, then simmer uncovered for an extra 5-10 minutes to let impurities rise to the surface. If the broth still looks off, strain it through a fine-mesh sieve lined with cheesecloth for a crystal-clear result. Fresh stock helps too—avoid using canned broths with additives.
Can I use chicken or shrimp instead of beef?
This recipe works beautifully with chicken breast (cut into ½-inch strips) or shrimp (peeled and deveined). For chicken, simmer for 8-10 minutes until fully cooked (165°F internal temp). Shrimp cooks in just 2-3 minutes—add them last to avoid overcooking. The broth flavors will shine with any protein, but beef gives that classic "tom yum" richness.
What's the best way to serve this soup for a crowd?
Double the recipe and keep the broth warm in a slow cooker on low heat while serving. Set up a toppings bar with extra lime wedges, chopped cilantro, Thai basil, and crushed peanuts for crunch. Serve with steamed jasmine rice in a chafing dish and fresh herbs on the side so everyone can customize their bowl. Pro tip: Use individual bowls with soup spoons for easy serving!
