Heat the butter in a large pot over low heat.
Add the cauliflower, onion, garlic, and thyme. Cover and cook for 5 minutes.
Add the chicken broth to the pot and increase heat to high. Bring to a boil and then reduce the heat to a simmer.
Cook, stirring occasionally, until the vegetables are tender, about 30 minutes.
Remove from heat. Using an immersion blender, puree the soup until very smooth.
Return the pot to medium-low heat and add the cream cheese and shredded cheeses. Cook until the cheese melts, about 5 minutes.
Stir in the heavy cream and season to taste with salt and pepper.
