“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
1 cup dried cannellini or other small white beans, soaked overnight
1 onion, quartered through root end
4 garlic cloves, crushed
2 bay leaves
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
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)
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.
Beans can be cooked 3 days ahead. Cover and chill.
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.
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.
Just before serving, stir in chard and cook until wilted. Ladle soup into bowls, top with almonds, and drizzle with oil.
Soup (without chard) can be made 4 days ahead. Let cool; cover and chill.