There’s something incredibly comforting about a bowl of soup that’s rich, smooth, and made with wholesome ingredients. This Creamy Tomato Bean Soup Recipe is a perfect example — it’s hearty, flavorful, and just the right amount of indulgent without being heavy. I’ve made this recipe countless times, and each time, it feels like a warm hug in a bowl.
Jump to:
Why You'll Love This Recipe
What really draws me to this Creamy Tomato Bean Soup Recipe is how it balances simple ingredients with big, comforting flavors. You don’t need to be a soup pro to pull this off, and the end result feels like it took hours to make — but with way less effort.
- Amazing texture: The beans give this soup a creamy, velvety consistency without relying heavily on cream.
- Wholesome ingredients: It’s loaded with veggies and protein-packed beans, so it’s nourishing and filling.
- Customizable: You can easily swap beans or veggies, or add your favorite herbs to make it your own.
- Perfect for any season: Cozy enough for chilly nights but fresh and bright with tomatoes to enjoy year-round.
Ingredients & Why They Work
The ingredients in this soup are straightforward but thoughtfully chosen. Each plays a role in building layers of flavor and making sure the texture is creamy and satisfying, even before you add the optional cream. When shopping, I look for good-quality tomato paste and fresh herbs if possible for the best flavor.
- Unsalted butter: It’s the perfect base for gently cooking veggies without overpowering the flavor.
- Onion: Adds natural sweetness and depth — I usually use yellow onions but white or brown work just fine.
- Garlic: A classic flavor enhancer, finely chopped so it disperses evenly.
- Carrot: Its natural sweetness balances the acidity of the tomatoes perfectly.
- Italian herb mix: This blend (oregano, thyme, basil, parsley) brightens the soup and gives an aromatic lift.
- Tomato paste: Concentrated for intense tomato flavor — it really makes the soup pop.
- Dry white wine (optional): Adds a subtle acidity and complexity — but if you don’t have it, that’s totally okay!
- Stock or broth: I prefer low sodium so I can control the saltiness myself; chicken or vegetable broth both work wonderfully.
- Cannellini (white) beans: The creamy texture when pureed gives the soup heartiness — plus, it’s a great source of protein.
- Parmesan cheese: Brings a lovely umami note that rounds out the flavors beautifully.
- Salt and pepper: Essentials for balancing and enhancing the overall taste.
- Baby spinach: Adds freshness and a pop of color — you can swap for other leafy greens or diced veggies if you like.
- Cream (optional): For that extra indulgent, silky finish; you can skip it or use a little more butter instead.
Make It Your Way
I love experimenting with this soup depending on what I have on hand. Sometimes, I toss in extra veggies like zucchini or corn, and other times I add a smoky touch with bacon bits for that cozy vibe. Feel free to make it your own - that’s half the fun!
- Vegetarian variation: Just skip the white wine and use vegetable broth for a meat-free but still deeply flavorful version — I’ve done this many times and it’s just as comforting.
- Protein boost: Adding cooked sausage or shredded chicken works beautifully if you want a heartier meal.
- Spicy twist: A pinch of red pepper flakes or a dash of hot sauce can give it a nice kick without overpowering the tomato’s tang.
- Seasonal greens: In fall and winter, kale or Swiss chard works well instead of spinach, just cook a bit longer to soften them.
Step-by-Step: How I Make Creamy Tomato Bean Soup Recipe
Step 1: Build Your Flavor Base
Start by melting the butter in a medium pot over medium-high heat. Once it’s melted and bubbly, toss in the finely chopped onion, garlic, and carrot. Cook them together for about 5 minutes until the carrot softens and the onions are translucent. About halfway through, sprinkle in the Italian herb mix so the heat can “wake up” the dried herbs — this little trick makes a noticeable difference in flavor.
Step 2: Elevate the Tomato Flavor
Turn the heat up to high, then stir in the tomato paste. Cooking it for 2 minutes helps get rid of the raw edge and deepens the tomato flavor. Next, pour in the white wine if you're using it. Let it simmer for about 3 minutes until the alcohol smell fades and the mixture thickens again. This step really brings complexity to the soup.
Step 3: Adding Beans and Stock
Add half a cup of the drained beans along with the stock, parmesan, salt, and pepper. Stir to combine, reduce heat to low, cover, and let it simmer for 3 minutes. This softens the beans and helps blend the flavors beautifully. Stir occasionally to keep everything from sticking.
Step 4: Blend to Creamy Perfection
Grab a stick blender and carefully puree the soup until it’s completely smooth. If you don’t have one, transfer to a blender in batches. The beans puree into a creamy base without needing tons of cream; this step is key to getting that rich, velvety texture.
Step 5: Final Touches
Return the soup to the pot, add the remaining beans, and simmer for another 3 minutes. Stir in the baby spinach until it wilts, then gently fold in the cream if you’re using it. Taste and adjust salt and pepper to your liking — remember that canned beans are already salted, so go easy at first. Serve right away with crusty bread for dunking and soaking up every last drop!
Top Tip
Over the years, I’ve learned that the key to making this soup truly special is in the quality and timing of each ingredient addition. Here are a few tips that will save you from common pitfalls and make sure your soup is silky and rich every time.
- Herb Blooming: Adding the herbs early with the onion really releases their fragrance and depth, so don’t rush this step.
- Tomato Paste Cooking: Always cook your tomato paste before adding liquid—it removes the bitterness and ramps up the umami.
- Blend Smoothly: Make sure the beans are very soft before pureeing to avoid grainy textures; canned beans are handy for this, or cook dried beans until tender.
- Season Gradually: Because canned beans and parmesan are salty, add salt late and taste often to avoid over-salting.
How to Serve Creamy Tomato Bean Soup Recipe
Garnishes
For garnish, I love a sprinkle of extra grated parmesan or even a little drizzle of good olive oil. Fresh basil leaves or a handful of crispy croutons add a lovely texture contrast and freshness. Sometimes I’ll also add a crack of black pepper or a pinch of chili flakes if I’m feeling a bit adventurous.
Side Dishes
This soup pairs wonderfully with rustic crusty bread or a garlic baguette for dunking — nothing beats soaking up that creamy goodness. A simple side salad with a tangy vinaigrette balances the richness nicely if you want to add some greens to your meal.
Creative Ways to Present
For a special occasion, I’ve ladled this soup into hollowed-out mini bread bowls or accompanied it by a grilled cheese sandwich cut into fun, bite-sized pieces for dipping. You can even serve it as a starter in small cups at a casual dinner party — it’s always a crowd pleaser!
Make Ahead and Storage
Storing Leftovers
I usually store leftovers in airtight containers in the fridge and find they stay fresh and flavorful for up to 4 days. I love making a big batch so I have lunch ready for a few days — it reheats beautifully with just a little gentle warming.
Freezing
This Creamy Tomato Bean Soup Recipe freezes extremely well too. I let it cool completely before portioning it into freezer-safe containers. When you thaw it, just reheat on the stove over medium heat, stirring occasionally to keep that silky texture intact.
Reheating
When reheating, I like to do it slowly on the stovetop with a splash of water or broth to loosen the soup if it’s thickened too much. Using low heat and stirring helps keep it creamy and prevents the dairy, if used, from separating.
Frequently Asked Questions:
Absolutely! Simply use plant-based butter or olive oil instead of butter, skip the parmesan or replace it with a vegan cheese alternative, and use vegetable broth. It will be just as creamy and delicious.
No worries — you can use dried beans. Soak them overnight and cook until tender before adding to the soup. The texture might be a bit firmer but still yields great results.
Yes! If you want to use fresh tomatoes, you’ll need more quantity (about 800g) and should either crush or blend them before adding. Adjust the stock accordingly since fresh tomatoes have more liquid. Simmer the soup uncovered for a bit longer to thicken before pureeing.
You can add a little more beans and give it extra time to simmer uncovered, allowing liquids to evaporate. Blending more beans into the soup also naturally thickens it while keeping it creamy.
Final Thoughts
This Creamy Tomato Bean Soup Recipe holds a special place in my kitchen routine — it’s reliable, comforting, and downright delicious every single time. Whether you’re looking for a quick lunch or a cozy dinner, this soup delivers without fuss. I honestly think you’ll enjoy making it as much as eating it, and I can’t wait for you to try it out and make it your own!
Print
Creamy Tomato Bean Soup Recipe
- Prep Time: 10 minutes
- Cook Time: 25 minutes
- Total Time: 35 minutes
- Yield: 4 servings
- Category: Soup
- Method: Stovetop
- Cuisine: Italian
- Diet: Vegetarian
Description
A rich and creamy tomato bean soup featuring white beans, tomato paste, and fresh spinach, simmered to perfection for a comforting and hearty meal. This soup blends savory herbs, parmesan, and a splash of cream to create a velvety texture ideal for cozy dinners.
Ingredients
Base
- 2 tablespoon butter, unsalted
- 1 onion, finely chopped
- 2 garlic cloves, finely chopped
- 1 large carrot, peeled and finely chopped
- 1 ½ teaspoon Italian herb mix (oregano, thyme, parsley, basil, or mixed)
- ¾ cup (170g) tomato paste
- ½ cup (125ml) dry white wine (optional)
- 4 cups (1 litre) low sodium chicken or vegetable stock
Beans and Cheese
- 3 x 420g (15oz) cans cannellini or any white beans, drained and rinsed
- ½ cup (50g) parmesan, grated
- ½ teaspoon salt
- ½ teaspoon black pepper
Greens and Cream
- 120g (4oz) baby spinach (or 5–6 cups other leafy greens or 4 cups diced vegetables)
- ¾ cup (185ml) heavy/thickened cream (optional) or more butter
Instructions
- Melt Butter and Sauté Vegetables: Melt butter in a pot over medium-high heat. Add chopped garlic, onion, and carrot; cook for 5 minutes until the carrot is soft and sweet.
- Add Herbs: About 3 minutes in, add Italian herb mix and continue cooking with the onions to release the herb flavors.
- Cook Tomato Paste: Increase heat to high, add tomato paste, and cook for 2 minutes to remove the raw flavor.
- Add Wine: Pour in white wine and cook for 3 minutes until the wine smell dissipates and mostly evaporates, leaving the tomato flavor concentrated.
- Add Initial Beans and Simmer: Add ½ cup of beans (to thicken the soup), stock, parmesan, salt, and pepper. Stir, reduce heat to low, cover, and simmer for 3 minutes, stirring occasionally.
- Puree Soup: Use a stick blender to puree the soup until smooth or transfer to a blender and blend.
- Add Remaining Beans and Spinach: Stir in the remaining beans and simmer for 3 minutes. Add spinach and cook until wilted.
- Finish with Cream: Stir in the cream if using. Adjust seasoning with salt and pepper as needed.
- Serve: Serve hot with crusty bread for dipping.
Notes
- Tomato Paste Substitute: Use 800g canned crushed or diced tomatoes or tomato passata instead of tomato paste. Reduce stock to 3 cups and simmer tomatoes for 10 minutes uncovered before pureeing.
- Beans: Any white beans like navy, lima, or butter beans work well. Other beans or lentils can be used but will affect the soup's color.
- Dried Beans: Soak 2 cups dried beans for 5 to 24 hours, then boil and simmer with salt until tender, about 25 minutes to 2 hours depending on bean type and age.
- Vegetable Additions: Add extra vegetables by cooking diced veggies first, removing them, then stirring back in after pureeing, or add quick-wilting greens with beans.
- Protein Options: Optionally add cooked bacon, ham, sausage, shredded chicken, or canned fish for heartier soup.
- Storage: Store soup in the fridge for up to 4 days or freeze. Reheat gently before serving.
- Cooking Tip: If beans are cooked firm, simmer the first addition longer so they puree smoothly.
Nutrition
- Serving Size: 1 bowl (about 350 ml)
- Calories: 350 kcal
- Sugar: 6 g
- Sodium: 480 mg
- Fat: 18 g
- Saturated Fat: 10 g
- Unsaturated Fat: 7 g
- Trans Fat: 0 g
- Carbohydrates: 28 g
- Fiber: 7 g
- Protein: 15 g
- Cholesterol: 40 mg
Leave a Reply