Print
clock clock iconcutlery cutlery iconflag flag iconfolder folder iconinstagram instagram iconpinterest pinterest iconfacebook facebook iconprint print iconsquares squares iconheart heart iconheart solid heart solid icon

Creamy Tomato Bean Soup Recipe

5 Stars 4 Stars 3 Stars 2 Stars 1 Star 4.7 from 4 reviews
  • Author: Dina
  • Prep Time: 10 minutes
  • Cook Time: 25 minutes
  • Total Time: 35 minutes
  • Yield: 4 servings
  • Category: Soup
  • Method: Stovetop
  • Cuisine: Italian
  • Diet: Vegetarian

Description

This creamy tomato bean soup is a hearty, comforting dish made with a flavorful blend of tomato paste, white beans, and fresh vegetables. Enhanced with Italian herbs, onion, garlic, and a touch of cream, it offers a smooth and nourishing meal perfect for lunch or dinner. The soup is versatile, allowing for substitutions like dried beans or extra vegetables, and can be served with crusty bread for a satisfying experience.


Ingredients

Scale

Main Ingredients

  • 2 tbsp butter, unsalted
  • 1 onion, finely chopped
  • 2 garlic cloves, finely chopped
  • 1 large carrot, peeled and finely chopped
  • 1 1/2 tsp Italian herb mix (oregano, thyme, parsley, basil, or mixed)
  • 3/4 cup tomato paste (170g)
  • 1/2 cup dry white wine (125ml), optional
  • 4 cups low sodium stock/broth, chicken or vegetable (1 litre)
  • 3 cans cannellini or white beans, drained and rinsed (3 x 420g/15oz)
  • 1/2 cup parmesan, grated (50g)
  • 1/2 tsp salt
  • 1/2 tsp black pepper
  • 120g baby spinach (or 56 cups other leafy greens or 4 cups diced vegetables)
  • 3/4 cup heavy cream (185ml), optional


Instructions

  1. Melt the Butter: In a pot over medium-high heat, melt the butter until fully melted and hot.
  2. Sauté Vegetables and Herbs: Add garlic, chopped onion, and carrot to the pot. Cook for about 5 minutes until the carrot is soft and the vegetables are aromatic. After 3 minutes, stir in the Italian herb mix to bloom the flavors.
  3. Cook Tomato Paste: Turn the heat up to high and add the tomato paste. Cook for 2 minutes to remove any raw tomato taste.
  4. Add White Wine: Pour in the white wine if using, and cook for 3 minutes until the wine smell dissipates and mostly evaporates, leaving the tomato paste flavor.
  5. Add Beans and Stock: Stir in half a cup of the drained beans, the stock, parmesan, salt, and pepper. Reduce the heat to low, cover, and simmer for 3 minutes, stirring occasionally.
  6. Puree Soup: Use a stick blender to puree the soup until smooth, or carefully transfer to a blender and puree.
  7. Simmer with Remaining Beans: Return the pureed soup to the pot and add the remaining beans. Simmer for another 3 minutes to heat through.
  8. Add Greens and Cream: Stir in the baby spinach until wilted. Then add the cream if using, mixing well. Adjust salt and pepper to taste.
  9. Serve: Serve hot with crusty bread for dipping and enjoy the creamy tomato bean soup.

Notes

  • For a less intense tomato flavor, substitute tomato paste with 800g canned crushed or diced tomatoes or tomato passata. Reduce stock to 3 cups and skip tomato paste. Add tomatoes with stock and 1/4 cup beans, simmer 10 minutes uncovered before pureeing.
  • Any white beans like navy, lima, butter beans work well. Other colored beans or lentils can be used but may change soup color.
  • If using dried beans, soak for 5–24 hours, drain, boil, then simmer until tender (around 25 minutes to 2 hours depending on bean type).
  • You can add extra diced vegetables by cooking them first and adding them back later or stir in quick-wilting greens directly.
  • For protein, add cooked bacon, ham, sausage, chicken, or canned tuna/salmon as desired.
  • Store soup up to 4 days in the fridge or freeze for longer storage. Reheat gently.
  • The soup yields 4–5 generous servings and is filling and nutritious.

Nutrition

  • Serving Size: 1 bowl
  • Calories: 350 kcal
  • Sugar: 6 g
  • Sodium: 500 mg
  • Fat: 18 g
  • Saturated Fat: 9 g
  • Unsaturated Fat: 7 g
  • Trans Fat: 0 g
  • Carbohydrates: 30 g
  • Fiber: 8 g
  • Protein: 15 g
  • Cholesterol: 40 mg