Vietnamese Meatball and Watercress Soup (Canh)

Christopher Kimball

Milk Street

“This refreshing supper is a take on canh, a type of quick, brothy Vietnamese soup. The soup (pronounced KUN) can be sour, rich with vegetables, [or] loaded with seafood. But whatever variety, the unifying factor is simplicity. Our version stays true to the simplicity, but scales up the ingredients so this can serve as a satisfying meal on its own. Watercress adds a peppery note; look for “live” watercress, which is packaged with its roots attached. It stays fresher longer and is easier to clean. To prep it, trim off and discard the roots, rinse and drain the greens, then cut them into 1 1/2-inch lengths, discarding any stems that are thick or tough. If you prefer, substitute an equal amount of baby spinach for the watercress, but roughly chop the leaves before using. We also liked this soup made with chicken bouillon paste instead of chicken broth; use 2 tablespoons of paste dissolved in 2 quarts of water.”—James Beard Award nominee Christopher Kimball


  • 1 pound ground pork
  • 6 scallions, white parts finely chopped, green parts thinly sliced and reserved separately
  • 1 lightly beaten large egg white
  • 3 tablespoons fish sauce, divided
  • 4 teaspoons finely grated fresh ginger, divided
  •  1 1/4 teaspoon Kosher salt
  •  1 teaspoon ground white pepper
  • 2 tablespoons grapeseed or other neutral oil
  • 1 chopped medium yellow onion
  • 4 thinly sliced medium garlic cloves
  • 2 quarts (8 cups) low-sodium chicken broth
  • 1 bunch cut into 1 1/2-inch lengths watercress (4 cups lightly packed)
  • 2 tablespoons lime juice (1 or 2 limes)


Prepare the meatballs: line a rimmed baking sheet with kitchen parchment and mist with cooking spray. In a medium bowl, combine the pork, scallion whites, egg white, 1 tablespoon of the fish sauce, 2 teaspoons of the ginger, kosher salt, and white pepper. Mix with your hands. Lightly moisten your hands with water and form into 20 balls, each about a generous tablespoon. Set on the prepared baking sheet, cover and refrigerate. Don't leave the meatballs at room temperature after shaping them. Chilling firms them so they hold together when added to the simmering broth.

Prepare the soup: in a large Dutch oven over medium, heat the oil until simmering. Add the onion and cook, stirring, until beginning to soften, about 5 minutes. Add the remaining 2 teaspoons of the ginger and the garlic, then cook until fragrant, about 30 seconds. Add the broth and bring to a boil over high. Reduce the heat to medium-low and simmer, uncovered, until the onion is fully softened, about 10 minutes.

Add the meatballs, then bring to a simmer over medium-high. Reduce the heat to maintain the simmer and cook undisturbed until the meatballs are cooked through, 8 to 10 minutes; they should reach 160°F at the center. Take the soup off the heat and stir in the watercress and the remaining 2 tablespoons fish sauce. Let the soup stand until the greens are wilted and tender, about 1 minute. Stir in the lime juice. Season with salt and pepper, then stir in the scallion greens.


Excerpted from: Milk Street: Tuesday Nights (Little, Brown and Company, 2018). Copyright © 2018. Photographs by Connie Miller.


Serves 4