Ingredients
- 4 tablespoons unsalted butter
- 1 small yellow onion, finely chopped
- 2 cloves garlic, minced
- 1/4 cup all-purpose flour
- 2 cups vegetable broth (or chicken broth for extra flavor)
- 2 cups whole milk (or half-and-half for a creamier version)
- 3 cups broccoli florets, chopped small
- 1 large carrot, grated or finely chopped
- 1/2 teaspoon kosher salt
- 1/4 teaspoon black pepper
- 1/4 teaspoon smoked paprika (optional but adds depth)
- Pinch of nutmeg (trust us, it works!)
- 2 cups shredded sharp cheddar cheese
- 1/2 cup shredded mozzarella cheese
- 1 tablespoon Dijon mustard (optional for flavor kick)
- Extra cheddar or mozzarella for topping (optional)
Instructions
Start by melting the butter in a large pot or Dutch oven over medium heat. Once it’s bubbling, add the chopped onion and sauté for about 4–5 minutes until soft and translucent. Toss in the minced garlic and cook for another 30 seconds until fragrant, stirring constantly so it doesn’t burn.
Sprinkle the flour over the onion and garlic mixture. Stir continuously for about 1–2 minutes to cook off the raw flour taste. This roux is what gives the soup its creamy base, so make sure it’s evenly mixed and golden in color.
Slowly whisk in the vegetable broth, breaking up any lumps as you go. Once it’s smooth, pour in the milk (or half-and-half if using). Stir well and let the mixture simmer gently for 3–4 minutes, allowing it to thicken slightly.
Toss in the chopped broccoli and grated carrot. Add salt, pepper, smoked paprika, and a pinch of nutmeg. Stir everything together and let it simmer uncovered for 15–20 minutes, or until the broccoli is tender enough to mash with a spoon but not falling apart.
You’ve got options here! For a chunky soup, leave everything as-is. For a smooth, velvety finish, use an immersion blender directly in the pot to blend until smooth. You can also blend half the soup to keep some texture. It’s totally up to your preference.
Turn the heat down to low and slowly stir in the cheddar and mozzarella cheeses, a handful at a time. Keep stirring until the cheese is fully melted and incorporated. Don’t boil the soup at this stage—just let it gently warm. Add the Dijon mustard if using and stir it in for an extra flavor boost.
Taste the soup and adjust the seasoning as needed—maybe a pinch more salt or a dash of pepper. Ladle it into bowls and top with extra shredded cheese or a swirl of cream if you’re feeling fancy. Serve hot with your favorite crusty bread or buttery crackers.
- Prep Time: 15 minutes
- Cook Time: 30 minutes
Nutrition
- Calories: 310
- Sugar: 5g
- Fat: 22g
- Carbohydrates: 16g
- Fiber: 3g
- Protein: 13g