A cozy, tangy, gently spicy soup you can make in one pot, faster than delivery.

Imagine a chilly evening when you want something deeply comforting but still a bit exciting. That is exactly where Chinese hot and sour soup shines. This classic restaurant favorite wraps you in steamy, savory broth that hits all the notes at once: sour from vinegar, heat from white pepper and chili, and layers of umami from mushrooms and soy. Making it at home lets you control how spicy, how tangy, and how hearty you want it, without mystery ingredients or waiting for takeout.
Hot and sour soup comes from northern Chinese cooking traditions, and there are as many versions as there are cooks. Some lean more peppery, some more sour, some with pork and some completely vegetarian. This recipe lands right in the middle: familiar takeout flavors with simple ingredients you can find in most grocery stores, plus a few optional add ins that bring it closer to what you might taste in a good Chinese restaurant. It is respectful of the original while staying practical for a home kitchen.
You will love this version if you want something that feels special but is very doable on a weeknight. It uses one pot, no fancy equipment, and leans on pantry staples like soy sauce, cornstarch, and vinegar. Tofu and egg add satisfying protein, while mushrooms and bamboo shoots give you that classic mix of chewy, tender, and crisp in every spoonful. The broth thickens lightly so it feels silky but not gloopy, and you can adjust the vinegar and chili at the end to suit everyone at the table.
This recipe also scales easily, keeps well for lunches, and is flexible enough to adapt to different diets. Whether you are craving a lighter dinner, a comforting starter for a bigger Chinese inspired feast, or a nourishing bowl when you are feeling under the weather, this hot and sour soup delivers big flavor with surprisingly little effort.
Ingredients

Serves 4
Broth and base
- 6 cups low sodium chicken or vegetable broth (1.4 L)
- 4 dried shiitake mushrooms, soaked and sliced, or 1 cup fresh sliced (about 70 g)
- 1 small handful dried wood ear mushrooms, soaked and sliced (optional, about 10 g)
- 1 cup canned bamboo shoots, cut into thin matchsticks, drained (140 g)
- 1 small carrot, cut into thin matchsticks (optional, about 60 g)
- 1 cup firm tofu, cut into thin batons (about 200 g)
- 4 oz lean pork tenderloin or chicken breast, cut into thin strips (optional, about 115 g)
Seasoning and heat
- 3 tbsp soy sauce (45 ml)
- 3 tbsp rice vinegar (45 ml), plus more to taste
- 1 tbsp Chinkiang black vinegar (15 ml, optional but lovely for depth)
- 1 tsp sugar (4 g)
- 1 to 1½ tsp ground white pepper, to taste
- 2 to 3 tsp chili oil or chili paste, to taste
- 1 tsp toasted sesame oil (5 ml)
- Salt, to taste
Thickening and finish
- 3 tbsp cornstarch (about 24 g) mixed with 3 tbsp cold water
- 2 large eggs, lightly beaten
- 2 green onions, thinly sliced
- Fresh cilantro leaves, for garnish (optional)
💡 Shopping tip: Check the “Asian” section for bamboo shoots, rice vinegar, and dried mushrooms; they are inexpensive pantry items that keep for months and make this soup taste restaurant quality.
Step by Step Instructions
- Soak the dried mushrooms
- Place dried shiitake and wood ear mushrooms (if using) in a bowl and cover with very hot water. Soak for about 15 minutes until softened.
- Drain, squeeze out excess water, remove any tough stems, and slice thinly.
- Build the broth
- In a medium or large pot, add the broth, sliced mushrooms, bamboo shoots, and carrot.
- If using pork or chicken, add the thin strips directly to the cold broth.
- Bring to a gentle boil over medium high heat, then reduce to a simmer and cook for 8 to 10 minutes, until the meat is just cooked and the vegetables are tender.
- Season the soup
- Stir in soy sauce, rice vinegar, black vinegar if using, sugar, white pepper, chili oil or paste, and tofu.
- Simmer for another 3 to 5 minutes so the tofu warms through and the flavors meld. Taste and adjust with more vinegar for tang, more white pepper or chili for heat, and salt if needed.
- Thicken to a silky consistency
- Stir the cornstarch slurry (cornstarch plus water) so it is smooth, then slowly drizzle it into the simmering soup while stirring gently.
- Continue to simmer for 2 to 3 minutes until the broth looks glossy and lightly thickened.
- Create the egg ribbons
- Turn the heat to low so the soup is steaming but not vigorously boiling.
- Slowly pour the beaten eggs into the soup in a thin stream while stirring gently in one direction to form ribbons. Let sit for 30 seconds so the egg sets.
- Finish and serve
- Turn off the heat and stir in sesame oil. Taste one last time and adjust vinegar, pepper, and salt.
- Ladle into bowls and top with sliced green onions and cilantro if using. Serve hot.
Variations & Substitutions
- Make it vegetarian: Use vegetable broth and skip the pork or chicken, adding extra tofu or mushrooms for more substance.
- Gluten free: Use tamari or certified gluten free soy sauce and check that your vinegar and chili paste are gluten free.
- Extra hearty: Add cooked rice or thin glass noodles during the last few minutes of simmering.
- No bamboo shoots: Substitute thin strips of bell pepper or extra carrot for texture.
- Different protein: Swap the pork for shrimp, adding them in the last 3 to 4 minutes of cooking so they do not overcook.
Make Ahead, Storage & Reheating
- Make ahead:
- Cook the soup through step 4, without adding the egg, up to 2 days in advance. Add the egg ribbons when you reheat for the freshest texture.
- Storage:
- Cool completely, then store in an airtight container in the fridge for up to 3 to 4 days.
- Freezing:
- For best results, freeze the soup without egg and cornstarch slurry for up to 2 months. Thaw in the fridge, reheat, then thicken and add egg just before serving. The fully finished soup can be frozen, but the egg texture may turn a bit spongy.
- Reheat:
- Warm gently on the stove over medium low heat, stirring occasionally, until steaming hot, about 5 to 7 minutes. Add a splash of water or broth if it has thickened too much, and refresh with a small drizzle of vinegar right before serving.
Nutritional Info (Estimated, per serving)
- Calories: ~180
- Protein: ~14 g
- Carbs: ~14 g
- Fat: ~7 g
💡 Note: Estimates vary by brands and portions.
Serving Suggestions
- Serve as a starter before stir fried dishes like beef and broccoli or garlic green beans.
- Pair with steamed jasmine or brown rice and simple sautéed greens for a light dinner.
- Add crispy spring rolls or potstickers on the side for a takeout style feast at home.
- Garnish bowls with extra chili oil, a drizzle of black vinegar, and extra green onions for restaurant level flavor.
- Offer pickled vegetables or a simple cucumber salad to balance the warmth of the soup.
Recipe FAQs
Can I make hot and sour soup without tofu or meat?
Yes. You can skip both and double the mushrooms and vegetables. The soup will still be flavorful and comforting, just a little lighter on protein.
What if I do not have black vinegar?
Use all rice vinegar instead. Black vinegar brings a deeper, malty tang, but rice vinegar alone makes a bright, delicious version.
Is this soup very spicy?
As written, it is gently spicy with heat mostly from white pepper. If you are sensitive, start with less chili oil and white pepper, then add more at the end to taste.
Can I use a different thickener instead of cornstarch?
Yes. Potato starch or arrowroot starch work well. Mix the same amount with cold water first, then add just like the cornstarch slurry.
Why did my soup turn too thick?
You likely added a bit too much slurry or let it reduce too long. Simply stir in extra broth or water, a few tablespoons at a time, until you reach the texture you like.
Can I freeze the leftovers with egg in them?
You can, but the egg strands may become slightly rubbery after thawing. If you plan to freeze most of the batch, consider freezing a portion before adding the egg.
Final Notes
Hot and sour soup is one of those recipes that feels almost magical once you learn it. A handful of everyday ingredients transform into something that smells like your favorite Chinese restaurant and tastes even better because you can tune every spoonful to your liking. The balance of sour vinegar, peppery heat, and savory broth is deeply satisfying yet never heavy.
Once you have made it once or twice, you will probably find yourself playing with the proportions, making it more tangy on cold days or adding extra chili when you need a little wake up. Keep some dried mushrooms, bamboo shoots, and vinegar in your pantry, and this soup becomes an easy comfort meal on busy nights.
If you try this recipe, I would love to hear how it turned out for you and what variations you used. Feel free to leave a comment, rate the recipe, or share it with someone who always orders hot and sour soup with their takeout. Happy cooking and enjoy your cozy bowl.


