Soft pork and wood ear mushroom meatballs simmered in a tangy tomato sauce, traditionally served with a crusty baguette.
Xiu mai are Vietnamese-style pork meatballs, softer and looser than Italian versions, bound with a little cornstarch and simmered rather than fried so they stay tender. Wood ear mushroom mixed into the pork gives a distinctive light crunch, and the tomato sauce they simmer in is tangy and only lightly sweet, closer to a thin, savory braise than a thick pasta sauce. The technique that matters is keeping the meatball mixture wet and slightly loose -- xiu mai should be tender and almost falling apart, not dense and bouncy like a French or Italian meatball. Simmering them gently in the tomato sauce, rather than searing first, keeps them soft throughout, and the sauce reduces slightly as they cook to coat everything in a rich, tangy glaze. Served with a crusty baguette for dipping into the sauce, or over rice, xiu mai reflects Vietnam's fusion of French bread culture with distinctly Vietnamese seasoning -- fish sauce, wood ear mushroom, and a lighter hand with tomato than its European meatball cousins.
Serves 4
Combine pork, wood ear mushroom, half the shallots, half the garlic, fish sauce, cornstarch, egg, and pepper. Mix until slightly sticky.
Wet your hands and roll the mixture into 16-18 golf-ball-sized meatballs.
Heat oil in a wide pot over medium heat. Cook remaining shallots and garlic 2 minutes until fragrant. Add tomatoes and tomato paste, cooking 5 minutes until jammy.
Pour in chicken stock and sugar, bring to a gentle simmer.
Carefully add meatballs to the sauce. Cover and simmer gently 20 minutes, without stirring roughly, until cooked through and tender.
Scatter with cilantro and serve hot with crusty baguette for dipping into the sauce.
Keep the meatball mixture slightly wet and loose -- xiu mai should be tender, not dense like a firm Italian-style meatball.
Simmer gently and avoid stirring roughly once the meatballs are in the sauce, or they'll break apart before they set.
Soak dried wood ear mushroom in hot water for at least 15 minutes until fully softened before chopping.
Serve over steamed rice instead of with baguette for a heartier meal.
Add a soft quail egg to each meatball before shaping for a traditional variation.
Use ground chicken instead of pork for a lighter version.
Refrigerate meatballs and sauce together up to 3 days; the flavor deepens overnight. Reheat gently on the stovetop over low heat to avoid breaking the meatballs apart.
Xiu mai reflects Vietnam's culinary fusion with French colonial bread culture, commonly eaten with a fresh baguette; the dish is a beloved home-cooking and street-food staple across Vietnam, especially in the south, often served for breakfast or a casual dinner.
Finely diced water chestnuts or omitting it entirely both work -- the mushroom mainly adds a light crunch rather than significant flavor.
The mixture was likely too wet, or the sauce was stirred too vigorously -- keep stirring gentle once the meatballs are added, and make sure the cornstarch and egg are well incorporated for binding.
Yes, shape and freeze raw meatballs on a tray until solid, then transfer to a bag -- simmer from frozen in the sauce, adding about 5 extra minutes of cooking time.
Per serving (380g / 13.4 oz) · 4 servings total
Ask our AI cooking assistant anything about this recipe — substitutions, techniques, scaling.
Chat with AI Chef →Join the conversation
Sign in to leave a comment and save your favourite recipes
Have feedback or need help?
We read every email and reply within 1–2 business days.
© 2026 MyCookingCalendar. All rights reserved.