01 - Melt butter in a large pot over medium heat. Add diced onion, carrots, and celery. Cook for 5 minutes, stirring occasionally, until vegetables begin to soften and become fragrant.
02 - Stir minced garlic into the pot and cook for 1 minute until aromatic, being careful not to burn it.
03 - Add cauliflower florets and diced potatoes to the pot. Cook for 2 minutes, stirring frequently to coat vegetables with butter and aromatics.
04 - Pour in vegetable broth, dried thyme, smoked paprika, salt, and black pepper. Bring mixture to a gentle boil, then reduce heat to low, cover, and simmer for 15 minutes until all vegetables are tender when pierced with a fork.
05 - Using an immersion blender, partially puree the soup directly in the pot, leaving some vegetable chunks for texture. Alternatively, carefully transfer half the soup to a countertop blender, puree until smooth, then return to pot.
06 - Stir whole milk and heavy cream into the soup. Bring to a gentle simmer over medium-low heat, stirring occasionally to prevent scorching.
07 - Gradually add shredded sharp cheddar cheese, a handful at a time, stirring constantly until completely melted and smooth. Taste and adjust salt and pepper as needed.
08 - Ladle hot soup into bowls. Garnish with chopped fresh chives and additional shredded cheddar cheese if desired. Serve immediately with crusty bread.