Thai Beef Noodle Soup
Silky rice noodles in a deeply savory beef broth, finished with tender beef slices and fresh herbs. A beloved Thai street-food classic that's surprisingly quick to make at home.
- Total time
- 35 min
- Servings
- 2
- Calories
- 580
- Protein
- 42g
Ingredients
- ¾ lb beef bones or oxtail
- ½ lb beef chuck or brisket
- 6 cups water
- 1 teaspoon rock sugar or granulated sugar
- 3 tablespoon low-sodium soy sauce
- 1 tablespoon dark soy sauce
- 1.5 teaspoon fish sauce
- 2 whole star anise pods
- 1 whole cinnamon stick (about 3 inches)
- 1 piece fresh ginger (1-inch piece)
- 3 clove garlic cloves
- ¾ lb fresh rice noodles (about 0.5-inch wide)
- 4 oz extra-firm tofu, cut into small cubes
- ¼ lb beef sirloin or tenderloin (sliced thin)
- ½ cup fresh Thai basil leaves
- ½ cup fresh cilantro leaves
- ¼ cup fresh mint leaves
- 2 oz long beans or green beans, cut into 2-inch pieces
- ½ cup bean sprouts
- 1 whole lime wedges
- 2 tablespoon crispy garlic fried shallots
Instructions
- 1
Fill a 5-quart pot with 6 cups of water and bring to a boil over high heat. Add the beef bones and 0.5 lb of beef chuck or brisket in one piece. Let it return to a rolling boil for 2-3 minutes — you'll see gray foam rise to the surface. This is impurities that will make the broth cloudy if left behind.
- 2
Carefully pour off all the water and rinse the bones and meat under cool running water. Rinse out the pot to remove any stuck-on residue. Return the cleaned bones and meat to the pot with 6 fresh cups of water.
- 3
Bring back to a gentle boil. While it heats, lightly smash 3 unpeeled garlic cloves with the flat of a knife and smash a 1-inch piece of fresh ginger with the side of a knife — you don't need to peel them. This releases their oils and flavor into the broth.
- 4
Add the smashed garlic and ginger, 2 whole star anise pods, and 1 cinnamon stick (about 3 inches) to the pot. Reduce heat to medium-low so the broth simmers very gently — you should see just a few bubbles breaking the surface. Partially cover with a lid and let it simmer for 25-30 minutes. The beef should be fork-tender and the broth deeply flavorful and rich amber in color.
- 5
Season the broth: stir in 3 tablespoons of low-sodium soy sauce, 1 tablespoon of dark soy sauce, 1.5 teaspoons of fish sauce, and 1 teaspoon of rock sugar. Taste and adjust — you want a savory, slightly sweet, umami-forward broth. If you want it slightly deeper, add another 0.5 teaspoon of fish sauce.
- 6
Using a slotted spoon, carefully remove the cooked beef from the broth and set it on a cutting board. Once cool enough to handle, shred it gently with two forks into bite-sized pieces (discard any large bones). Strain the broth through a fine-mesh strainer into a clean pot, pressing gently on the solids. Discard the bones, spices, and aromatics. Taste the strained broth one more time and adjust seasoning if needed. Keep it at a gentle simmer over medium-low heat.
- 7
Bring a separate pot of water to a rolling boil over high heat. If using fresh rice noodles (which is traditional), gently place them in the pot and stir for 30-40 seconds until they separate and heat through — they should still have a delicate, silky texture. If using dried rice noodles, cook according to package directions until just tender. Divide the cooked noodles between two large bowls.
- 8
Arrange your garnishes on a small plate: 0.5 cup fresh Thai basil leaves, 0.5 cup fresh cilantro, 0.25 cup fresh mint, 2 oz long beans or green beans cut into 2-inch pieces, and 0.5 cup fresh bean sprouts.
- 9
Pat 0.25 lb of thinly sliced beef sirloin or tenderloin completely dry with paper towels. Arrange the slices around the edge of a small plate near your workspace — you're going to pour hot broth over them in the bowl, and the heat will gently cook them to tender, silky strips.
- 10
Ladle the hot simmering broth into each bowl of noodles — you want enough broth to generously cover the noodles. The broth should be at a rolling simmer, around 200°F (93°C). Pour about 1.5 cups of broth into each bowl.
- 11
Working quickly, drape the thinly sliced raw beef over the top of the hot broth in each bowl. The residual heat will gently poach the beef in about 30-45 seconds; the slices should be blushed pink but no longer raw. You'll see them curl slightly and turn opaque at the edges.
- 12
Top each bowl with a generous handful of the fresh herbs and vegetables you arranged on the plate — the basil, cilantro, mint, long beans, and bean sprouts add brightness and textural contrast. Sprinkle 1 tablespoon of crispy garlic fried shallots over each bowl for crunch and savory depth.
- 13
Serve immediately with lime wedges on the side. Squeeze the lime over the noodles just before eating — the acidity brightens the rich, savory broth perfectly. This is authentic street-food style.
Tools you’ll need
- 5-quart pot
- fine-mesh strainer
- slotted spoon
- cutting board
- instant-read thermometer
- two large serving bowls
- soup ladle
- small plate (for garnishes)
- paper towels
Cook smarter
Get matched recipes for what’s in your fridge
CookSnap is a free iOS app that finds real recipes from the ingredients you already have. No more grocery-list aspirations.


