Soups & Stews
This bak chor mee soup recipe delivers the perfect balance of crispy, wok-tossed noodles and tender char siu pork in a rich, aromatic broth. The secret lies in achieving crispy celery crowns while keeping the noodles al dente—no soggy bites here.
I’ve perfected this Malaysian classic over years of testing, ensuring every bite is packed with umami and texture.
The dish starts with a deeply flavorful pork broth, simmered with spices and aromatics until rich and fragrant. Fresh egg noodles get their signature crispy edges from a quick wok toss, while thinly sliced char siu pork adds sweet, smoky depth.
The crispy celery crowns—crunchy yet tender—are the star garnish, balancing the dish’s bold flavors.
What makes this recipe shine is the harmony of textures: crispy noodles, tender pork, and the satisfying crunch of celery. The broth is savory but not overpowering, letting the ingredients speak for themselves. Serve with chili oil, fried shallots, and lime wedges for the full experience.
Ready in under an hour, this soup is perfect for weeknight dinners or weekend gatherings. The technique is straightforward, but the results are restaurant-quality—every spoonful is a taste of Malaysia’s vibrant street food culture.
Ingredients for bak chor mee soup
Crispy celery crowns, tender pork, and aromatic broth—this Malaysian classic delivers restaurant-quality texture in every bite.
| Ingredient | Amount | Notes |
|---|---|---|
| Fresh Egg Noodles 🍜 | 8 oz | Dried or fresh, al dente preferred |
| Char Siu Pork 🍖 | 8 oz | Thinly sliced, store-bought or homemade |
| Celery Stems 🧅 | 4 whole | Thick, crisp stems for crowns |
| Pork Bones 🦴 | 1 ½ lb | Marrow and knuckle for rich broth |
| Pork Shoulder 🥩 | 8 oz | Diced for broth, not visible pieces |
| Dried Shrimp 🦐 | ½ cup | For umami depth, rehydrated |
| Dried Shiitake Mushrooms 🍄 | 4 whole | Rehydrated for meaty texture |
| Garlic Cloves 🧄 | 8 cloves | Minced for aromatic base |
| Fresh Ginger 🌿 | ½ cup | Julienned, skin removed |
| Star Anise Pods 🌟 | 2 whole | Whole, removed before serving |
| Cinnamon Sticks 🌿 | 2 whole | For aromatic depth |
| Bay Leaves 🍃 | 2 whole | Dried, removed before serving |
| Soy Sauce 🍶 | ½ cup | Dark soy for color, light for flavor |
| Sesame Oil 🫒 | 1 tbsp | Toasted, for finishing |
| Vegetable Oil 🫒 | ½ cup | High smoke point for wok toss |
| Chili Oil 🌶️ | 2 tbsp | For serving, optional |
| Fried Shallots 🧅 | ¼ cup | For garnish, store-bought or homemade |
| Lime Wedges 🍋 | 2 whole | For serving, fresh |
The celery crowns are non-negotiable for that signature crunch. Use thick, crisp stems—avoid thin stalks or leafy ends. For the broth, pork bones with marrow create unmatched richness; Costco or Asian markets carry excellent cuts. Char siu pork? Store-bought works, but homemade (marinated in hoisin, honey, and five-spice) elevates the dish. Dried shiitakes and shrimp add umami without overpowering—soak them first to rehydrate fully. The garlic and ginger should be freshly minced, not pre-chopped, for maximum aroma.
No pork bones? Chicken bones or beef marrow work in a pinch, though pork remains ideal. Substituting dried shrimp? Mushrooms or oyster sauce can mimic umami, but texture differs. For the noodles, fresh egg noodles are essential—dried versions won’t achieve the same crispy edges. The soy sauce blend? Dark soy for color, light soy for flavor—don’t skip both. Celery crowns too challenging? Thinly sliced celery ribbons with a quick sear in oil provide a similar crunch. And if you’re short on time, pre-cooked char siu from an Asian grocery still delivers authentic flavor.
Broth keeps 3-4 days refrigerated or 3 months frozen—portion into containers for easy reheating. Celery crowns crisp best when fried fresh, but store cooked batches in oil for up to 2 days to preserve texture. Noodles should be cooked al dente and tossed immediately in the wok—overcooking kills crispiness. Garnishes like chili oil and fried shallots can be prepped ahead; lime wedges add brightness, so serve them fresh alongside. For leftovers, reheat broth separately to avoid soggy noodles.
Why You'll Love This Recipe
- One-Pot Magic: I swear by this—simmer pork bones and shoulder in the same pot, then toss in noodles and char siu at the end. Less washing, more flavor.
- Umami Bomb: That pork bone broth? Deep, rich, and so satisfying. The celery stems add a subtle crunch that cuts through the richness—trust me, it’s the little details.
- Leftover Hero: This soup only gets better the next day. Reheat the broth, add fresh noodles, and you’ve got a quick lunch—no stress, no waste.
- Budget Feast: Pork shoulder and bones stretch for meals. Char siu adds luxury without breaking the bank, and egg noodles? Cheap comfort in every bite.
Step-by-step instructions for bak chor mee soup
Master the art of crispy celery crowns and wok-tossed noodles with this precise method.
Prepare the Celery Crowns and Char Siu Pork
Cut the 4 whole celery stems into ½-inch thick rounds, keeping the stems intact. Blanch them in boiling water for 30 seconds, then immediately shock in ice water to maintain crispness. Pat dry thoroughly with paper towels—this prevents sogginess during frying.
While the celery cools, slice the 8 oz char siu pork into ¼-inch thick strips. Set both aside on separate plates. The celery crowns should remain perfectly crisp for frying later, while the char siu will absorb the wok's heat beautifully during tossing.
Build the Rich Pork Broth
In a large stockpot, combine the 1.5 lb pork bones and 8 oz pork shoulder, adding 6 cups cold water. Bring to a boil over high heat, then reduce to a simmer for 3 hours, skimming any foam that rises to the surface. This creates a clean, flavorful base.
Add the 4 whole dried shiitake mushrooms, 0.5 cup dried shrimp, 8 cloves garlic, 0.5 cup fresh ginger, 2 whole star anise pods, 2 whole cinnamon sticks, and 2 whole bay leaves. Simmer for another 30 minutes until the broth develops deep umami and aromatic notes. Strain through a fine-mesh sieve, pressing the solids to extract maximum flavor.
Fry Celery Crowns to Crispy Perfection
Heat 0.5 cup vegetable oil in a wok over medium-high heat until it reaches 350°F. Working in batches, fry the celery crowns for 2-3 minutes until deep golden brown and crisp. Drain on paper towels and set aside—they should hold their shape when stacked. If they darken too quickly, reduce heat slightly to prevent burning.
In the same wok, add 0.5 cup vegetable oil and heat to 375°F. Add the 8 oz fresh egg noodles and toss vigorously for 2-3 minutes until they turn a light golden color. This quick stir-fry prevents mushiness while building flavor. Remove and set aside.
Assemble and Finish the Soup
Return the wok to the stovetop and add 0.5 cup soy sauce and 1 tbsp sesame oil. Bring to a gentle simmer, then add the char siu pork and fried celery crowns. Toss everything together for 1 minute to coat evenly. The celery should remain crisp while absorbing the sauce's flavors.
Divide the noodles among 4 bowls, ladle the hot broth over them, and garnish with 0.25 cup fried shallots and 2 tbsp chili oil. Serve immediately with the 2 whole lime wedges on the side for brightness. Each bite should deliver crisp celery, tender noodles, and rich pork broth in perfect harmony.
Pro Tips For Making Bak Chor Mee Soup
- BLANCH PORK BONES FIRST: I learned this the hard way—skipping the 10-minute blanch in boiling water before simmering leaves your broth cloudy and weak. The initial boil removes impurities and renders fat faster, giving you that rich, golden broth in half the time. (Yes, even if you're impatient like me, trust the process.)
- CUT CHAR SIU THIN: Don’t just tear that Char Siu—slice it against the grain into ¼-inch strips. Thinner pieces cook faster, stay tender, and melt into the soup instead of sitting like chewy chunks. Pro move: Add them last, just before serving, so they stay juicy.
- SIMMER LOW AND SLOW: After the initial boil, drop the heat to a bare simmer—no bubbles, just gentle ripples. High heat turns pork bones to mush and makes noodles soggy. I used to rush this, but now I set a timer for 2 hours minimum, and the broth develops depth without bitterness.
- USE CELERY STEMS WISELY: Skip the leaves—they’re bitter. Instead, cut the fibrous stems into 1-inch chunks and add them early with the pork bones. They infuse flavor without overpowering, and you can fish them out later. (Bonus: They’re cheaper than buying fresh celery.)
Storing and reheating your leftovers
Broth Storage Secrets
The rich pork broth is the heart of this dish, and it keeps beautifully for later use. Store it in an airtight container in the refrigerator for up to 3-4 days—the flavors actually deepen as spices meld together.
For longer storage, freeze it in 1-cup portions (standard ice cube trays work perfectly) for up to 3 months. When reheating, bring to a simmer over medium-low heat—never microwave, as it dulls the aromatic oils. 💛
Noodle Preservation
Fresh egg noodles are delicate, so handle them carefully. If making ahead, cook them al dente, rinse in cold water to stop cooking, then toss with 1 tsp vegetable oil to prevent sticking. Store in an airtight container in the fridge for 1 day max—they lose crispness quickly.
For freezing, blanch for 30 seconds, shock in ice water, and freeze on a tray before transferring to a bag. Reheat by tossing in a dry wok over high heat for 1-2 minutes until crisp again.
Celery Crowns
These are the star garnish, but they crisp best when fresh. If you fry extra, store them in a single layer in an airtight container with a paper towel to absorb moisture. They’ll stay crisp for 2 days at room temperature or 1 week in the fridge.
For reheating, warm in a dry skillet over medium heat for 30 seconds—never microwave, or they’ll turn rubbery. 🌶️
Char Siu Pork
Store-bought char siu stays fresh for 3 days in the fridge, but homemade versions (marinated in hoisin and five-spice) keep for 2 days. Reheat in a dry skillet over medium heat for 1-2 minutes until warmed through—this preserves the caramelized exterior.
For freezing, slice first, then store in a single layer before bagging. Thaw in the fridge overnight and reheat gently to avoid drying.
Complete Soup Assembly
When reheating leftovers, separate components: broth, noodles, and toppings. Reheat the broth first, then toss in the noodles and char siu pork over high heat for 1-2 minutes to restore crispness.
Add fried celery crowns last—just 30 seconds in the wok maintains their crunch. Garnish with fresh chili oil and lime wedges to brighten flavors. Serve immediately for that restaurant-quality texture. ⚡
Nutrition facts
Frequently asked questions about bak chor mee soup
What makes the celery crowns crispy in this recipe?
The secret lies in blanching first (30 seconds in boiling water) followed by an ice bath to stop cooking, then thorough drying with paper towels. Frying at 350°F for 2-3 minutes creates that signature crunch. Pat them completely dry before frying—any moisture will turn them soggy!
Can I substitute fresh pork bones with chicken bones?
Yes, but expect a lighter broth. Chicken bones work well for a milder flavor, though pork bones provide deeper umami. For best results, use chicken marrow bones or add 1 tbsp soy sauce and ½ tsp five-spice powder to mimic pork's richness. The texture will be slightly different but still delicious.
How do I prevent the noodles from getting soggy?
Cook noodles al dente (1 minute less than package instructions), rinse in cold water, and toss immediately in a dry wok over high heat for 2-3 minutes until golden. Never add broth directly to the noodles—always assemble components separately and combine just before serving. This keeps them crispy!
What's the best way to make char siu pork from scratch?
Marinate 1 lb pork shoulder in ¼ cup hoisin sauce, 2 tbsp honey, 1 tbsp soy sauce, 1 tsp five-spice powder, and 1 minced garlic clove for 4 hours. Grill or broil at 400°F for 15-20 minutes, basting often, until caramelized. Slice thinly before using in the soup.
Can I make this soup vegetarian?
Replace pork bones with mushroom stems or kombu seaweed for umami, and use tofu or seitan instead of char siu. Skip the dried shrimp and add 1 tbsp miso paste to the broth. For texture, pan-fry shredded napa cabbage to mimic celery crowns. The broth will still be rich and aromatic!
