Skip to main content

Tomato and Cannellini Bean Soup

4.8

(34)

Photo of one of our best bean soup recipes a tomato and white bean soup in a bowl with a spoon.
Photo by Eva Kolenko

"Vegetable soup is something I can eat a ton of and still feel healthy. The problem is, I get hungry again two hours later. So I came up with a version with beans, which deliver protein and texture, tiding me over to the next meal." —Rick Martinez, associate food editor, digital

Recipe information

  • Yield

    6 servings

Ingredients

Beans:

1 cup dried cannellini or other small white beans, soaked overnight
1 onion, quartered through root end
4 garlic cloves, crushed
2 bay leaves
Kosher salt

Soup:

4 Tbsp. olive oil, divided, plus more for drizzling
1 (28-ounce can) whole peeled tomatoes, drained
1/2 teaspoon (or more) crushed red Pepper flakes
Kosher salt
1 onion, chopped
1 fennel bulb, cored, chopped
4 garlic cloves, very thinly sliced
1 tablespoon Sherry vinegar
4 cups low-sodium vegetable broth
1 bunch Swiss chard, stems removed, leaves torn into pieces
Chopped unsalted, roasted almonds (for serving)

Preparation

  1. Step 1

    Beans Combine beans, onion, garlic, and bay leaves in a large pot and add cold water to cover by 2". Bring to a simmer over medium heat, add several pinches of salt, and reduce heat to low. Continue to cook at a bare simmer until beans are creamy but still hold their shape, 35-45 minutes. Let beans cool in cooking liquid; discard bay leaves.

  2. Do ahead

    Step 2

    Beans can be cooked 3 days ahead. Cover and chill.

  3. Soup:

    Step 3

    Heat 2 Tbsp. oil in a large heavy pot over medium-high. Add tomatoes, 1/2 tsp. red pepper flakes, and a pinch of salt and cook tomatoes, undisturbed, until caramelized and borderline blackened on one side, about 5 minutes. Break up tomatoes, scraping bottom of pot, and continue to cook, scraping and stirring occasionally, until tomatoes are caramelized all over, about 5 minutes more. Transfer tomatoes to a plate.

    Step 4

    Heat another 2 Tbsp. oil in same pot over medium. Add onion, fennel, garlic, and a pinch or so of red pepper flakes, if desired; cook, stirring often, until vegetables are soft and starting to brown around edges, 8-10 minutes. Stir in vinegar and tomatoes, scraping up browned bits. Drain beans and add to pot along with broth (for a thicker soup, use half of the broth plus 2 cups bean-cooking liquid). Bring to a simmer; season with salt. Cook until flavors meld, 30–45 minutes.

    Step 5

    Just before serving, stir in chard and cook until wilted. Ladle soup into bowls, top with almonds, and drizzle with oil.

  4. Do ahead

    Step 6

    Soup (without chard) can be made 4 days ahead. Let cool; cover and chill.

Read More
This sauce is slightly magical. The texture cloaks pasta much like a traditional meat sauce does, and the flavors are deep and rich, but it’s actually vegan!
This is what I call a fridge-eater recipe. The key here is getting a nice sear on the sausage and cooking the tomato down until it coats the sausage and vegetables well.
Salmoriglio is a Mediterranean sauce with herbs, garlic, and olive oil. In this version, kelp is used as the base of the sauce.
Traditionally, this Mexican staple is simmered for hours in an olla, or clay pot. You can achieve a similar result by using canned beans and instant ramen.
This vegan version of the classic North African scramble uses soft silken tofu instead of eggs without any sacrifice of flavor.
This marinara sauce is great tossed with any pasta for a quick and easy weeknight dinner that will leave you thinking, “Why didn’t anyone try this sooner?”
Caramelized onions, melty Gruyère, and a deeply savory broth deliver the kind of comfort that doesn’t need improving.
This luscious chilled yogurt soup, packed with fresh and dried mint, is an incredibly refreshing and cooling appetizer during the summer.