Sometimes, even in the dead of summer, you just want a warm bowl of soup to round out your meal. I know it’s hot out, but hear me out, Vietnamese culture has a long tradition of soups that are believed to have cooling properties. These aren’t heavy, rich stews meant to weigh you down. They’re light, brothy, and nourishing, bringing balance and comfort to your plate. This mushroom tofu soup, or canh đậu hũ nấm, is exactly that. A simple home-style soup that often plays a supporting role in a larger family meal, or com gia dinh. It’s not supposed to be the star of the show; instead, its job is to offer sustenance, bring the meal together, and make everything else on the table shine a little brighter.
Let’s talk mushrooms
One of the things I love most about this soup is how it lets the natural flavor and texture of mushrooms shine. Today, I’m using a trio of mushrooms that each bring something unique to the bowl: small king oyster mushrooms, button mushrooms, and seafood mushrooms (also known as beech mushrooms).

King Oyster Mushrooms
These are one of my absolute favorites to cook with; king oyster mushrooms have thick, pale stems and short, stubby caps. When sliced, their dense and meaty texture makes them almost feel like a vegetarian substitute for meat. They hold their shape beautifully after simmering, offering a satisfying chew in every bite. The flavor is subtle, mildly earthy with a little bit of umami, and they soak up the broth while still maintaining their own character.

Button Mushrooms
These are probably the most common mushrooms out there and for good reason. Their smooth white caps and short stems are instantly recognizable. In this soup, button mushrooms add that familiar, comforting mushroom aroma we all grew up with. They’re softer than king oysters, and once cooked, they become tender and almost silky. Their flavor is mild but deepens the longer they simmer, helping build a more rounded soup base.
Seafood (Beech) Mushrooms
These are the most delicate and whimsical of the three. Seafood mushrooms come in small clusters, with long, thin off-white stems and petite, rounded caps that almost look like little umbrellas. They’re often labeled as beech mushrooms at the store. Their name comes from their subtle brininess; there’s a clean, ocean-like umami to them that pairs beautifully with tofu and light broths. They stay slightly crisp even after cooking, giving the soup a nice bit of texture that contrasts with the softness of the tofu.

That said, don’t feel like you have to stick to these three. This soup is super versatile. You can swap in whatever mushrooms you’ve got on hand; shiitake will add a deeper, woodier flavor, enoki brings a delicate, noodle-like texture, and maitake adds an earthy, nutty edge. Even using just one kind will still give you a cozy and delicious result.
Make this recipe your own!
In this recipe, I use ground pork as the base to build out the flavor of the broth. However, if you’re trying to keep things pescatarian, dried shrimp works great as a substitute. Just soak them in warm water before adding them, and follow the directions as written.

For a vegetarian version, skip the pork entirely and use a high-quality vegetable stock instead of water. Bump up the mushroom quantity a bit to give the broth more depth. It still hits all the right notes and brings that same sense of comfort.


Bland and not particularly interesting. Will not make again.
Hi David,
Thanks for the comment, and can understand where you’re coming from. At home soups like this are typically more plain and simple, and more meant for nourishment and sustenance. This allows the main course to be the star of the show. With that said, everyone’s palate is different and that’s okay. I hope you give some of my other recipes a try!