This warming soup combines tender vegetables like carrots, celery, potatoes, and zucchini with protein-rich cannellini and kidney beans. The aromatic base of sautéed onions and garlic builds depth, while dried thyme, oregano, and smoked paprika add layers of flavor. Simmered in vegetable broth with diced tomatoes, this nutrient-dense bowl gets a finishing touch of greens for extra vitamins. Perfect for meal prep and even better the next day, it's a satisfying choice for busy weeknights or relaxed weekend lunches.
The first time I made this soup was during a particularly brutal February when my apartment felt like an icebox and I needed something that would warm me from the inside out. My grandmother would have called it "make-do soup" - the kind that evolves from whatever vegetables are looking slightly sad in the crisper drawer. Now it is become my go-to for rainy Sundays, snow days, or whenever someone in my house needs a little extra comfort.
Last winter my neighbor came over shivering after her heat went out and I made a double batch. We sat at my kitchen table eating steaming bowls while the wind howled outside and she asked for the recipe before she even finished her first serving. Something about this soup makes people feel taken care of.
Ingredients
- 2 tablespoons olive oil: This creates the flavor foundation for everything that follows so use something you actually like tasting
- 1 large onion, diced: Yellow onions work beautifully here but red onions add a lovely sweetness if that is what you have
- 2 medium carrots, peeled and sliced: These add natural sweetness and become tender enough to melt in your mouth
- 2 celery stalks, sliced: Do not skip these - they provide that classic soup base flavor that makes everything taste like home
- 2 medium potatoes, peeled and diced: Yukon gold hold their shape beautifully while russets will break down slightly to thicken the broth naturally
- 1 red bell pepper, diced: This adds gorgeous color and a subtle sweetness that balances the earthy beans
- 3 garlic cloves, minced: Fresh garlic makes all the difference here - add it right before the liquid so it does not burn
- 1 zucchini, diced: Zucchini absorbs all the flavors around it while adding bulk without heaviness
- 2 cups chopped kale or spinach: Kale holds up better if you are making this ahead but spinach wilts beautifully into the hot broth
- 1 (15 oz) can cannellini beans, drained and rinsed: These creamy beans are like little pillows in the soup
- 1 (15 oz) can kidney beans, drained and rinsed: Their hearty texture stands up to the long simmer without turning mushy
- 6 cups vegetable broth: Low sodium lets you control the salt level and really taste the vegetables
- 1 (14 oz) can diced tomatoes, with juice: The juice adds body to the broth while the tomatoes provide little bursts of brightness
- 1 teaspoon dried thyme: This earthy herb pairs perfectly with beans and vegetables alike
- 1 teaspoon dried oregano: Oregano adds that classic Mediterranean note that makes everything taste comforting
- 1 teaspoon smoked paprika: This is the secret ingredient that adds depth without any heat at all
- 1 bay leaf: Remove it before serving but let it work its magic during cooking
- Salt and freshly ground black pepper: Taste at the end and adjust - the beans already have sodium so go slowly
- 2 tablespoons chopped fresh parsley: This bright garnish makes everything look and taste fresher
- 1 tablespoon lemon juice: Just a splash wakes up all the flavors at the very end
Instructions
- Build your flavor foundation:
- Heat the olive oil in your large pot over medium heat until it shimmers slightly then add your onion, carrots, and celery. Let them soften and become fragrant for about 5 minutes, stirring occasionally so nothing sticks.
- Add the hearty vegetables:
- Toss in the potatoes, red bell pepper, and garlic, cooking for another 3 minutes while the garlic becomes aromatic and the potatoes start to look slightly translucent around the edges.
- Bring it all together:
- Pour in the zucchini, both kinds of beans, the entire can of diced tomatoes with their juice, all the vegetable broth, and your thyme, oregano, smoked paprika, bay leaf, salt, and pepper. Stir everything together until the pot is full and colorful.
- Let it simmer:
- Bring the soup to a gentle boil then immediately reduce the heat to maintain a steady simmer. Cover the pot and let it cook for 25 minutes until the potatoes are easily pierced with a fork.
- Add the greens:
- Stir in your kale or spinach and let it simmer for just 5 more minutes until the greens have wilted into the soup and turned tender.
- Finish with brightness:
- Fish out and discard the bay leaf then taste the soup and adjust the seasoning with more salt, pepper, or that tablespoon of lemon juice if you feel it needs a little something extra.
- Serve it up:
- Ladle the hot soup into bowls and sprinkle each serving with fresh parsley while it is still steaming.
This soup became a regular at our monthly potluck dinners after everyone kept asking when I would make "that bean soup" again. There is something about a big pot simmering on the stove that makes people linger in the kitchen, talking and sneaking tastes while they wait.
Making It Your Own
The beauty of this soup is how forgiving it is. I have made it with just whatever vegetables were in my fridge and it has never let me down once.
The Bread Situation
Crusty bread is not optional in my house - we tear it directly into the bowls and let it soak up all that flavorful broth. Something magical happens when bread meets this soup.
Freezer Wisdom
This soup freezes exceptionally well which is why I always make a double batch. It has saved me on countless busy weeknights when cooking anything feels impossible.
- Let the soup cool completely before freezing so ice crystals do not form
- Leave out the greens if you plan to freeze - add fresh ones when you reheat
- Label your containers with the date because this soup tastes so good you will want to eat it within three months
There is nothing quite like sitting down with a steaming bowl of this soup and watching the world go by outside your window. Hope it brings your kitchen as much warmth as it has brought to mine.
Recipes Q&A
- → How long does this soup keep in the refrigerator?
-
This soup stores beautifully in an airtight container for 4-5 days. The flavors actually develop and deepen over time, making it an excellent option for meal prep.
- → Can I freeze this soup?
-
Yes, this soup freezes well for up to 3 months. Let it cool completely before transferring to freezer-safe containers. Thaw overnight in the refrigerator before reheating.
- → What other vegetables work in this soup?
-
Feel free to use whatever vegetables you have on hand. Butternut squash, sweet potatoes, green beans, or chopped cabbage all work beautifully. The broth and seasonings will tie everything together.
- → Can I use dried beans instead of canned?
-
Absolutely. Soak 1 cup of dried beans overnight, then cook them separately until tender before adding to the soup. You'll need about 3 cups of cooked beans total.
- → How can I make this soup more filling?
-
Add a cup of small pasta like shells or ditalini during the last 10 minutes of cooking. Alternatively, serve with crusty bread or over cooked rice for a heartier meal.
- → Can I make this in a slow cooker?
-
Sauté the aromatics first, then transfer everything to your slow cooker. Cook on low for 6-7 hours or high for 3-4 hours. Add the greens during the last 30 minutes.