Soups & Stews
This 3 bean chilli soup recipe delivers the hearty, satisfying texture of three different beans in one deeply flavorful pot—perfect for chilly evenings or meal prep. The secret lies in slow simmering, which transforms tough beans into tender, flavor-packed bites while developing a rich, smoky broth. I've perfected this vegetarian version over years of testing, balancing earthy spices with fresh herbs for depth that keeps everyone asking for seconds.
The magic happens with a combination of kidney beans for heartiness, black beans for smokiness, and cannellini beans for creaminess—each bringing its own texture and flavor to the pot. A blend of cumin, smoked paprika, and garlic builds layers of warmth, while tomatoes add brightness. The soup thickens naturally as it simmers, creating a velvety consistency without needing thickeners. This is the kind of recipe that gets better with time, rewarding patience with restaurant-quality results.
By the time you're done, you'll have a steaming bowl of soup with tender beans, vibrant spices, and a broth so rich it feels like a hug in a bowl. The aroma alone will have everyone gathering around the table, and the first bite delivers that perfect balance of smoky, tangy, and comforting. It's the kind of meal that transforms a simple weeknight into something special—without the fuss.
Serve it with crusty bread to soak up every last drop of that flavorful broth, or pair it with a simple green salad for a complete meal. The leftovers reheat beautifully, making this an ideal recipe for meal prepping. Here's how to make it—step by step.
Ingredients for 3 bean chilli soup
Three beans, one pot—this vegetarian chilli delivers rich, smoky flavor with tender textures.
| Ingredient | Amount | Notes |
|---|---|---|
| Kidney Beans 🫘 | 1 ½ cups | Dried or canned, drained and rinsed |
| Black Beans 🫘 | 1 ½ cups | Dried or canned, drained and rinsed |
| Cannellini Beans 🫘 | 1 ½ cups | Dried or canned, drained and rinsed |
| Diced Tomatoes 🍅 | 2 cups | Canned, fire-roasted preferred |
| Tomato Paste 🍅 | ½ cup | For thickening and depth |
| Yellow Onion 🧅 | 1 whole | Diced, medium size |
| Garlic Cloves 🧄 | 4 cloves | Minced, fresh preferred |
| Ground Cumin 🌿 | 1 tbsp | Toasted for deeper flavor |
| Smoked Paprika 🌶️ | 1 tbsp | For authentic smoky taste |
| Chili Powder 🌶️ | 1 tbsp | Adjust for heat preference |
| Vegetable Broth 💧 | 4 cups | Low-sodium preferred |
| Fresh Cilantro 🌿 | ¼ cup | Chopped, for garnish |
| Fresh Lime 🍋 | 1 whole | Juiced, for brightness |
| Olive Oil 🫒 | 2 tbsp | Extra-virgin for richness |
| Salt 🧂 | 1 ½ tsp | Adjust to taste |
| Black Pepper 🌶️ | ½ tsp | Freshly ground preferred |
The beans are the heart of this soup. Dried beans take longer but develop deeper flavor—soak overnight for best results. If using canned, opt for no-salt-added varieties like Bush's or Libby's to control seasoning. The kidney beans add heartiness, black beans bring smokiness, and cannellini offer creaminess. Whole Foods or Trader Joe's carry excellent dried bean options if you prefer to soak and cook from scratch. For the tomatoes, fire-roasted diced tomatoes add natural sweetness and depth, but any good-quality canned tomatoes work. The tomato paste is key—it thickens the soup naturally and adds that restaurant-quality richness.
No smoked paprika? Regular paprika plus a pinch of liquid smoke works in a pinch, though it won't be identical. Want to cut back on heat? Reduce the chili powder to half a tablespoon or swap it for sweet paprika. Fresh herbs matter here—the cilantro adds brightness, but if you're not a fan, fresh parsley works beautifully. The lime juice is non-negotiable for that final tangy kick. For the broth, low-sodium options like Pacific Foods or Imagine give you control over seasoning. If you're in a hurry, a quick tomato-based broth works too, but vegetable broth adds more depth. The onion and garlic are the aromatic base—don't skip browning them for that sweet, caramelized flavor.
This soup tastes even better the next day as flavors meld. Store in an airtight container in the fridge for up to 5 days, or freeze portions for 3 months. I like to portion it into individual containers for easy lunches. The beans thicken as they cool, so you might need to add a splash of broth when reheating. Garnish with extra cilantro and lime wedges before serving—fresh herbs elevate every bowl. For meal prep, double the batch and freeze half immediately. The soup reheats beautifully on the stove or in the microwave, though stove-top reheating preserves texture better.
Why You'll Love This Recipe
- Pantry Powerhouse: I swear by this recipe when I’ve got nothing but canned beans and a jar of tomatoes. No fresh herbs? No problem—the tomato paste and diced tomatoes give it that deep, smoky base without needing anything fancy.
- No-Fuss Simmer: Honestly, the hardest part is draining the beans. Toss all three into a pot with the tomatoes, a splash of broth, and let it bubble while you chop an onion or stir a side salad. Twenty minutes later, dinner’s ready.
- Leftovers That Beg for More: This soup only gets better the next day. The flavors meld into something richer, and I’ve reheated it three times without a single complaint—even from my picky teenager who usually turns up his nose at beans.
- Budget-Friendly Family Feeder: Between us, this recipe costs me about $1.50 per serving and stretches to feed four or five. The cannellini beans add creaminess, the kidney beans bring heartiness, and the black beans? They’re the secret weapon that makes everyone ask for seconds.
Step-by-step instructions for hearty three-bean chili soup
This method delivers rich, flavorful chili with perfect bean texture every time.
Sauté Aromatics Until Fragrant
Heat the 2 tablespoons olive oil in a large Dutch oven over medium heat. Add the diced yellow onion and cook for 5 minutes until softened and translucent. The onions should release their natural sweetness without browning.
Add the 4 minced garlic cloves and cook for 30 seconds until fragrant. Here's the thing—don't let the garlic burn. It should smell amazing but not bitter. Stir constantly to prevent burning while building that aromatic base.
Toast Spices for Depth of Flavor
Add the 1 tablespoon ground cumin, 1 tablespoon smoked paprika, and 1 tablespoon chili powder to the pot. Stir continuously for 1 minute until the spices become fragrant and slightly toasted. This step develops their flavors and prevents that raw spice taste.
I press the spices into the onions with a wooden spoon to help them bloom properly. The mixture should darken slightly and fill your kitchen with warm, earthy aromas. This is where the chili gets its complex, layered flavor profile.
Build the Base with Tomatoes and Beans
Add the 2 cups diced tomatoes and 0.5 cup tomato paste, stirring to combine. Cook for 3 minutes until the tomato paste darkens slightly and coats the onions. This creates the rich, thick base for your chili.
Add the 1.5 cups kidney beans, 1.5 cups black beans, and 1.5 cups cannellini beans. Stir well to coat all the beans in the tomato mixture. The beans will absorb these flavors as they cook, creating that perfect chili texture we're after.
Simmer Until Beans Are Tender
Pour in the 4 cups vegetable broth and bring to a gentle boil. Reduce heat to low and add the 1.5 teaspoons salt and 0.5 teaspoon black pepper. Cover and simmer for 30-40 minutes, stirring occasionally, until the beans are fork-tender.
You'll know they're ready when a bean easily crushes between your fingers with just slight resistance. If the soup gets too thick, add a splash of water or broth to maintain the perfect consistency. The beans should be soft but still hold their shape.
Finish and Serve with Fresh Garnishes
Remove from heat and stir in the juice of the 1 whole fresh lime. This brightens the flavors and cuts through the richness. Let the chili sit for 5 minutes to allow the lime juice to meld with the other ingredients.
Ladle into bowls and garnish with the 0.25 cup chopped fresh cilantro. The acidity from the lime and freshness of the cilantro elevate the dish to restaurant-quality. Serve immediately with crusty bread or cornbread for dipping.
Pro Tips For Making 3 Bean Chilli Soup
- Sauté the Paste First: Skip dumping that tomato paste straight in—cook it in the pot for 2-3 minutes with a splash of water until it darkens. This deepens the flavor and prevents a raw, chalky aftertaste. (Yes, even if you’re impatient like me, don’t rush this.) ---
- Rinse the Beans: Give your canned beans a quick rinse before adding them to the soup—especially if they’re salt-packed. The extra sodium can throw off your seasoning later, and nobody wants to fix a bland chili with more salt halfway through. ---
- Crush Half the Tomatoes: Toss half your diced tomatoes into a blender or mash them with a fork before adding them to the pot. This creates a thicker, richer base without needing extra thickeners. (Your future self will notice the difference.) ---
- Simmer Low and Long: Let the soup bubble gently for at least 45 minutes after everything’s combined—low heat prevents the beans from turning mushy and lets the flavors meld. Skipping this step means ending up with something closer to bean stew than chili.
Serving suggestions for this recipe
Crusty Bread Pairings
Nothing beats this chili with warm, crusty bread to soak up every last drop of that flavorful broth. I love using a sourdough loaf from my local bakery—its tangy flavor complements the smoky chili beautifully. For a quicker option, French baguettes or Italian ciabatta work perfectly. Toast the bread lightly before serving to enhance its crunch and texture.
Cornbread Complements
Sweet cornbread is a classic pairing that balances the heat and richness of the chili. I make a simple batch with cornmeal, buttermilk, and honey for a touch of sweetness. The crumbly texture contrasts nicely with the creamy beans, and the slight sweetness cuts through the smoky spices. Serve it warm alongside the chili for the ultimate comfort food combo.
Green Salad Contrast
A bright green salad adds freshness and lightness to the hearty chili. I toss mixed greens with avocado slices, cherry tomatoes, and a lime vinaigrette for a refreshing contrast. The acidity of the lime ties back to the lime juice in the chili, creating a cohesive flavor experience. This pairing is perfect for a complete, balanced meal.
Cheesy Toppings
For an extra layer of richness, top individual bowls with shredded cheddar or monterey jack cheese just before serving. The cheese melts beautifully into the warm chili, adding a creamy, savory element. I also like sprinkling crumbled feta for a tangy twist that pairs well with the lime and cilantro. Let guests customize their own bowls for a fun, interactive touch.
Avocado Lime Garnish
Add a dollop of mashed avocado and a squeeze of lime juice to each bowl for a vibrant, creamy garnish. The avocado’s buttery texture contrasts with the chili’s heartiness, while the lime brightens the flavors. I also sprinkle crushed red pepper flakes for those who crave extra heat. This garnish elevates the dish to restaurant-quality with minimal effort.
Warm Tortilla Bowls
For a twist on traditional serving, offer warm corn tortillas on the side. Guests can use them to scoop up chili or wrap it into tacos for a fun, hands-on experience. Lightly toast the tortillas and keep them warm in a 150°F oven until ready to serve. This adds an interactive element that’s especially great for family-style meals or gatherings.
Nutrition facts
Frequently asked questions
Can I use dried beans instead of canned?
For the best flavor, soak dried beans overnight in plenty of water with a pinch of salt. Drain and rinse before cooking. Dried beans take 1-2 hours of simmering until tender, so add them to the pot with the broth and simmer until fork-tender. The result is even more flavorful than canned beans!
How can I make this soup spicier?
Boost the heat by adding 1/2 teaspoon cayenne pepper or 1 diced jalapeño with the onions. For smoky depth, increase smoked paprika to 1.5 tablespoons. If you love chili heat, try adding 1/2 cup diced chipotle peppers in adobo sauce with the tomato paste. Always taste as you go!
Why does my chili taste bland?
Most likely, the spices didn't toast enough or the broth wasn't seasoned properly. Always toast spices for 1 full minute until fragrant. For depth, add 1 teaspoon soy sauce or 1/2 teaspoon fish sauce (vegetarian-friendly) to the broth. A final squeeze of lime and extra salt before serving can also brighten flavors.
Can I make this soup in an Instant Pot?
Yes! Sauté onions and garlic first, then add all ingredients except lime and cilantro. Seal the lid and cook on high pressure for 15 minutes, then quick-release. Finish with lime juice and fresh herbs. The Instant Pot cuts cooking time by about half while keeping all the flavor!
What's the best way to store leftovers?
Store in an airtight container in the fridge for up to 5 days. The flavors actually improve overnight! For freezing, portion into individual containers and freeze for up to 3 months. When reheating, add a splash of broth or water if the soup thickens too much. Never reheat directly from frozen—thaw first!
