01 - Melt the butter in a large pot over medium heat. Add chopped onion, grated carrot, celery, and minced garlic. Cook 4 to 5 minutes until softened and fragrant.
02 - Stir in all-purpose flour and cook 1 to 2 minutes, stirring constantly until the mixture turns lightly golden.
03 - Gradually whisk in vegetable broth to avoid lumps. Add broccoli florets and stems along with salt, black pepper, and optional nutmeg.
04 - Bring to a gentle simmer, cover, and cook for 15 to 18 minutes until broccoli is very tender.
05 - Use an immersion blender directly in the pot to purée until smooth or leave small chunks for texture. Alternatively, blend in batches using a countertop blender with care.
06 - Return soup to low heat. Stir in whole milk and heavy cream, heating gently for 2 minutes without boiling.
07 - Add cheddar cheese in handfuls, stirring until fully melted and smooth. Taste and adjust salt, pepper, and optional cayenne pepper as desired.
08 - Toast bread slices or warm the baguette in the oven until crisp.
09 - Ladle the soup into bowls and serve immediately alongside the warm bread.