Soups · Chinese
Hot and Sour Soup
Peppery, tangy and silky, with pork, tofu, mushrooms and soft ribbons of fully cooked egg.
- Hands-on
- 45 min
- Hands-off
- 15 min
- Total
- 1 h
- Makes
- 6 starter bowls
- Serves
- 6
The tofu is pressed for 15 minutes while the pork marinates and you slice the vegetables. The soup itself cooks in about 15 minutes and needs you at the stove the whole time. Total = 45 min active + 15 min pressing.
- medium
- takeout-at-home
- winter
- starter
Verified against at least two trusted test kitchens or food-safety guides · Last checked · What this means

Scaling? Serves 6 to 8 as a starter. When doubling, use a bigger pot and add the egg slowly in thin streams; a larger amount poured at once makes clumps instead of ribbons. Some items (like eggs) don’t halve neatly: beat them, then measure out half.
Ingredients
You need: pie plate and a heavy plate plus 2 heavy cans (to press the tofu) · 2 small bowls and a fork · large saucepan · cutting board and sharp knife · ladle · instant-read thermometer (optional)
Contains: egg · soy · wheat · sesame
Method
Press the tofu
Put the 200 g (7 oz) tofu in a pie plate, set a heavy plate on top and weigh it down with 2 heavy cans. Leave it for at least 15 minutes.
Marinate the pork
Whisk 1 tbsp soy sauce, 1 tsp sesame oil and 1 tsp cornstarch in a bowl. Toss in the pork matchsticks and leave for at least 10 minutes but no more than 30. Wash your hands and board after handling the raw pork.
Mix the thickener and the egg
Stir 3 tbsp cornstarch with 3 tbsp cold water and leave the spoon in the bowl. In another bowl, mix 1/2 tsp cornstarch with 1 tsp water, add the egg and beat with a fork until even.
Simmer the mushrooms
Bring 1.4 litres (6 cups) broth to a boil over medium-high heat, then turn it down to medium-low. Add the bamboo shoots and sliced shiitake and simmer for about 5 minutes.
Ready when: The mushrooms are just tender and floppy.
Add the tofu and pork
Cut the pressed tofu into 1 cm (1/2 in) cubes. Add the tofu and the pork with its marinade, pulling apart any pork pieces that stick together, and simmer for about 2 minutes.
Ready when: Every piece of pork is opaque all the way through with no pink left; the thin strips are well past 63°C (145°F) by now.
Thicken
Stir the cornstarch mixture again (it settles), pour it in and turn the heat up to medium-high. Cook for about 1 minute, stirring now and then.
Ready when: The soup thickens and turns from cloudy to glossy and translucent.
Season, then heat off
Stir in 5 tbsp black vinegar, 2 tsp chili oil, 1 tsp white pepper and the remaining 3 tbsp soy sauce, then turn off the heat.
Ready when: Off the heat: the soup is still steaming and glossy, ready for the egg.
Drizzle in the egg
Without stirring, slowly drizzle the egg mixture into the pot in very thin streams, moving in a circle. Leave it for 1 minute.
Otto tried this firstOtto dumps the whole egg in at once and stirs hard, and gets scrambled lumps. The trick is thin streams, no stirring, and a minute to set before the pot goes back on.Boil to set the egg, serve
Put the pan back over medium-high heat and bring it to a gentle boil, then take it off the heat at once. Stir once to spread the egg, ladle into bowls and top with the sliced scallions.
Ready when: The soup comes back to a gentle boil and the egg ribbons are opaque and fully set, with no runny egg left.
Swaps
- Instead of 5 tbsp Chinese black vinegar: 1 tbsp red wine vinegar plus 1 tbsp balsamic vinegar Use this if you can't find black vinegar.
- Instead of 2 tsp chili oil: 1 tsp chili oil, or none For a milder soup.
- Instead of fresh shiitake: dried shiitake: cover with boiling water for about 30 minutes, drain, squeeze dry and slice thinly Throw away the soaking water.
- Instead of pork loin chop: pork tenderloin, sliced very thin into narrow strips Cook it the same way, until no pink remains.
Make ahead, store & reheat
- Storage
- Cool and refrigerate within 2 hours. Keeps 3 to 4 days in the fridge.
- Reheat
- Reheat until the soup boils gently and reaches 74°C (165°F) throughout.
If something goes wrong
- Clumpy egg instead of thin ribbons Why: The egg went in all at once, or the soup was stirred straight away.
Drizzle in very thin streams without stirring, wait 1 minute, then bring back to a gentle boil. - Soup didn't thicken Why: The cornstarch settled in its bowl, or the soup didn't come back up to heat.
Stir the cornstarch mixture right before adding it, and cook on medium-high until it turns translucent.
Good to know
- Pork is much easier to slice into thin matchsticks if you freeze it for about 30 minutes first.
- Leave the spoon in the cornstarch mixture so you remember to stir it right before it goes in.
Safety
- The egg must be fully cooked: bring the soup back to a gentle boil after adding it, until no runny egg remains.
- Pork strips must be cooked through with no pink before you thicken the soup.
- Keep raw pork away from food that won't be cooked; wash hands, board and knife in hot, soapy water.
- Most soy sauces contain wheat, and sesame oil and chili oil contain sesame. Check the labels of soy sauce, black vinegar and chili oil for allergens.