In a large pot or Dutch oven, melt butter over medium heat. Add onion and cook until softened, about 5 minutes.
Add garlic and cook for another minute until fragrant.
Sprinkle flour over the onion and garlic, stirring constantly for 1-2 minutes to cook out the raw flour taste.
Gradually whisk in the chicken broth and milk, stirring constantly to prevent lumps from forming.
Add broccoli florets and grated carrot. Bring the mixture to a simmer.
Stir in nutmeg, paprika, salt, and pepper.
Reduce heat to low and simmer for 15-20 minutes, or until the broccoli is tender.
Remove from heat and use an immersion blender to partially puree the soup, leaving some chunks for texture. If you don't have an immersion blender, carefully transfer about half the soup to a blender, puree, and return to the pot.
Stir in the shredded cheddar cheese and heavy cream until the cheese is fully melted and incorporated.
Serve hot, and garnish with additional shredded cheese, if desired and enjoy!
Video
Notes
For a thicker soup, you can increase the flour to 1/3 cup. If you prefer a completely smooth soup, puree all of it instead of leaving chunks.Refrigerate any leftover soup in an airtight container for up to 5 days or freeze for up to 3 months.