Time Required: 3-9 hours, depending on how long you marinate your tofu

Garlic Ginger Noodle Soup with Marinated Tofu and Vegetables

Healthy, vegetarian, cozy, Thai-inspired soup.

Get Started


This recipe has a lot of room for you to experiment with ratios and ingredients to tailor the soup to your specific tastes. Using the general steps here as a good guideline, feel free to play with the balance of flavors and add or remove things as you see fit!

As written, this recipe happens to be vegan, but if you're an avid meat-eater you could always use your favorite meat instead of tofu and/or swap the vegetable broth for low-sodium chicken broth. You could also swap the rice vermicelli for your preferred noodle variety, follow your heart.

Garlic Ginger Noodle Soup with Marinated Tofu and Vegetables


For the tofu:
  • 1 package (1 lb) extra firm tofu
  • 2 tbsp dark soy sauce
  • 2 tbsp low sodium soy sauce
  • ½ tbsp hoisin sauce
  • ½ tbsp chili garlic sauce
  • 1 tsp sesame oil
  • ½ lemongrass stalk or ½ tsp lemongrass powder
  • 1-2 inch piece of fresh ginger
  • 4-6 cloves garlic
  • ½ lime
  • 1 tbsp vegetable or canola oil
For the soup:
  • 2 ½ tbsp olive oil
  • 1 bunch scallions
  • 4-5 inch piece of fresh ginger
  • 8-12 garlic cloves
  • 4 cups vegetable broth (ideally either Ocean's Halo No Chicken Broth or Imagine Vegetarian No Chicken Broth)
  • 4 cups water
  • 1 stalk lemongrass
  • 1 tsp freshly ground coriander seeds
  • Salt to taste
  • Pepper to taste
  • MSG to taste
  • 1 ½ limes
  • 5 oz fresh baby spinach
  • 2-4 heads baby bok choy
  • 8 oz cremini mushrooms
  • 12 oz rice vermicelli or small rice stick noodles
  • 1 bunch cilantro
  • Optional: 1 small jalapeño
  • Optional: fresh bean sprouts
  • Optional: chili oil


  1. Press and marinate the tofu:
    1. Drain the tofu and pat it dry. Wrap the tofu in paper towels and place something large and heavy on top of it to press out most of the liquid. Press the tofu for 30-60 minutes.
    2. Finely mince or grate the 1-2 inch piece of ginger into a medium bowl. Finely mince or press the 4-6 garlic cloves and add them to the ginger in the bowl.
    3. If you're using fresh lemongrass, slice the ½ stalk lengthwise and add it to the bowl with the garlic and ginger. If you're using lemongrass powder, simply add that to the bowl.
    4. Add the dark soy sauce, low sodium soy sauce, hoisin sauce, chili garlic sauce, and sesame oil to the bowl. Zest and juice the ½ lime and add both the zest and the juice to the bowl. Stir or whisk the mixture to combine, then taste the marinade, adjusting ratios as desired. Feel free to also add in salt, pepper, garlic powder, ginger powder, or any other seasonings you feel like it needs.
    5. Remove the paper towels from the tofu and slice the tofu into bite-sized cubes. I usually slice the tofu in half by thickness, then into quarters lengthwise and into quarters again widthwise, resulting in 32 small cubes. Pat any wet sides of the cubes dry with a paper towel.
    6. Add the tofu cubes to the bowl with the marinade and gently stir to evenly coat the tofu. Transfer the tofu and marinade to a large ziploc bag, pressing out as much air as possible.
    7. Place the bag of tofu on a small baking tray or a large flat plate, making sure all the cubes are in one even layer (not stacked), then place that into the fridge and let marinate for 4-8 hours, flipping the bag over once on the tray or plate halfway through marinating to ensure both sides of the tofu get marinated. You could also let the tofu marinate at room temperature for 30-60 minutes, but you'll get the best flavor by marinating for several hours in the fridge.
  2. Make the broth:
    1. Finely slice the scallions, separating the scallion whites from the scallion greens. Set aside the sliced scallion greens to use as a topping later.
    2. Finely mince 3-4 inches of the ginger and finely mince or press 6-10 cloves of the garlic. Leave roughly a 1 inch piece of ginger and 2 cloves of garlic for toppings later.
    3. Slice off the very bottom of the lemongrass stalk, then slice off most of the green top part of the stalk, leaving just the roughly 4 inch white and pale yellow-green part of the stalk. Slice that remaining 4 inch piece in half lengthwise, then crush both halves slightly with your knife.
    4. Add 2 tbsp of the olive oil to a large pot and heat over medium heat. Add the sliced scallion whites to the oil and cook for 1-2 minutes, stirring often, until fragrant and slightly softened.
    5. Add the garlic and ginger to the pot and cook for another 1-2 minutes, stirring often, until fragrant and just threatening to brown slightly.
    6. Add the vegetable broth, water, lemongrass, and coriander seeds to the pot, stirring to make sure none of the scallions, ginger, or garlic are stuck to the bottom of the pot. Bring the broth to a boil, then cover the pot with a lid and reduce the heat to bring the broth down to a simmer.
    7. Let the broth simmer for 20-30 minutes, stirring occasionally.
    8. Squeeze in the ½ lime, let the broth simmer for another minute or two, then taste the broth and add salt, pepper, and MSG to taste. If the flavors of the garlic, ginger, lemongrass, or scallions are not strong enough in the broth, continue simmering, tasting every 10 minutes, until you're happy with the flavor. You can also add some garlic powder, ginger powder, onion powder, or lemongrass powder if you want to help speed it up a bit.
    9. Strain the broth through a fine mesh sieve into another pot (or into a large bowl then back into your original pot). Cover the pot and return it to the stove over low heat to keep it warm while you prepare your toppings.
  3. Prepare your toppings:
    1. Finely mince the remaining 1 inch piece of ginger and 2 cloves of garlic.
    2. In a small nonstick pan, heat the remaining ½ tbsp olive oil over medium high heat. Add the garlic and ginger and sauté 2-3 minutes until just lightly browned and crispy. Remove the garlic and ginger from the pan and place them on a paper towel to soak up any excess oil.
    3. Slice off the bottoms of the baby bok choy and wash the leaves thoroughly, roughly chopping any especially large leaves into 2 or 3 pieces.
    4. Thoroughly wash the mushrooms and roughly chop them into bite sized pieces.
    5. Wash the cilantro, remove the main part of the stems, and roughly chop the leaves.
    6. Slice the whole lime into large wedges (I usually slice in half lengthwise, then slice each half into thirds).
  4. Cook the tofu:
    1. Add the vegetable or canola oil to a large nonstick pan and heat it over medium high heat until shimmering.
    2. Add the marinated tofu to the pan, along with any marinade left in the bag that didn't get absorbed by the tofu. Spread out the tofu cubes so that they form one even layer in the pan, then let them cook until the bottom of each piece starts to get somewhat caramelized and crispy, roughly 2-4 minutes.
    3. Flip each tofu piece onto a new side and let cook until that new side is also crispy, roughly another 2-4 minutes. Repeat this process until at least 4 sides of the tofu are crispy and the tofu feels like it has more structural integrity than it originally had. I like to cook only 4 sides so 2 sides are still soft because I like that contrast, but feel free to crisp up all 6 sides.
    4. Remove the tofu from the heat and set aside until the soup is ready to serve.
  5. Assemble the soup:
    1. This recipe makes roughly 4 portions of soup. If you're not intending to serve all 4 portions immediately, place any broth you don't want to use now into a storage container and bring the remaining broth in the pot back up to a simmer over low medium heat.
    2. Add the mushrooms and baby bok choy to the broth, using only the portions you intend to serve now (for example, use only ¼ of both ingredients if you intend to eat/serve only 1 portion now). Place the lid back on the pot and continue to simmer, stirring occasionally, until the mushrooms and baby bok choy are almost cooked through, roughly 3-5 minutes.
    3. While the mushrooms and baby bok choy simmer in the broth, cook the rice vermicelli according to package instructions (again, only cooking the portions you intend to serve now) and portion the cooked noodles into serving bowls.
    4. When the mushrooms and baby bok choy are roughly 1 minute away from being cooked through, add the spinach to the simmering broth and stir until the spinach just wilts (again, only adding in the spinach portions you intend to serve now).
    5. Divide the broth and vegetables into the bowls with the cooked noodles.
    6. Top each bowl of soup with ¼ each of the tofu cubes (~8 cubes), the sliced scallion greens, the chopped cilantro, and the crispy garlic and ginger. Optionally also top with a few thin slices of jalapeño, some fresh bean sprouts, and a drizzle of chili oil.
    7. Squeeze a lime wedge over the bowl of soup and enjoy! Store leftover portions of each ingredient separately in the fridge for up to a week. To serve leftovers, reheat the tofu separately in a microwave or a nonstick pan, then follow the same soup assembly instructions above.