01 - Melt butter in a large pot over medium heat. Add diced onion, carrot, celery, and minced garlic. Sauté for 4-5 minutes until vegetables are softened and fragrant, stirring occasionally to prevent browning.
02 - Add the diced potatoes and broccoli florets to the pot. Stir well to combine with the aromatic vegetables, ensuring even distribution for consistent cooking.
03 - Pour in the vegetable broth and bring to a boil. Reduce heat to low and simmer uncovered for 15-18 minutes, or until potatoes and broccoli are fork-tender. Skim any foam that rises to the surface.
04 - Remove pot from heat. Use an immersion blender to puree the soup until mostly smooth while retaining some texture for body. Alternatively, transfer to a stand blender in batches, taking care with hot liquids.
05 - Return the pot to low heat. Stir in the whole milk and heavy cream. Heat gently until warmed through, approximately 3-5 minutes. Avoid boiling to prevent dairy from separating.
06 - Gradually add the shredded sharp cheddar and grated Parmesan cheeses, stirring continuously until completely melted and smoothly incorporated. The soup should become velvety and thick.
07 - Season with salt, black pepper, smoked paprika, and cayenne pepper to taste. Ladle hot soup into bowls and garnish with additional shredded cheddar and chopped chives or green onions if desired.