# What You Need:
→ Vegetables
01 - 2 tablespoons olive oil
02 - 1 medium onion, finely chopped
03 - 2 celery stalks, finely chopped
04 - 2 medium carrots, peeled and diced
05 - 2 cloves garlic, minced
→ Beans & Liquid
06 - 2 (15-ounce) cans cannellini beans, drained and rinsed
07 - 4 cups vegetable stock
08 - 1 bay leaf
→ Dairy & Seasoning
09 - 1/2 cup freshly grated Parmesan cheese, plus more for serving
10 - 1/2 teaspoon salt, or to taste
11 - 1/4 teaspoon freshly ground black pepper
12 - 1/4 teaspoon dried thyme
13 - 1/2 cup heavy cream
→ Garnish
14 - Fresh parsley, chopped
# Step-by-Step Guide:
01 - Heat olive oil in a large pot over medium heat. Add onion, celery, and carrots. Sauté for 6-8 minutes until vegetables are softened and translucent.
02 - Stir in minced garlic and cook for 1 minute until fragrant.
03 - Add drained cannellini beans, vegetable stock, bay leaf, dried thyme, salt, and black pepper. Bring mixture to a simmer.
04 - Reduce heat to low, cover pot, and let simmer for 20 minutes to develop flavors and soften beans completely.
05 - Remove bay leaf. Use an immersion blender to purée soup until smooth and creamy. Alternatively, carefully transfer soup in batches to a countertop blender and blend until desired consistency is achieved.
06 - Stir in freshly grated Parmesan cheese and heavy cream. Heat gently over low heat until cheese is completely melted and soup reaches serving temperature. Adjust salt and pepper to taste.
07 - Ladle soup into serving bowls. Garnish with additional Parmesan cheese and fresh chopped parsley. Serve immediately while hot.