Melt butter in a Dutch oven over medium heat. Add garlic, onion and thyme. Sauté until onions are translucent, about 4 minutes.
Slowly whisk in flour. Cook until flour is golden brown, stirring frequently. Slowly whisk in milk, vegetable broth and heavy cream. Stir to combine. Add broccoli and stir until everything is well mixed.
Bring milk mixture to a boil, reduce heat and simmer until broccoli is tender, about 8 minutes. Puree the soup until it has reached the desired consistency. I used my Vitamix to puree the mixture, but an immersion blender can be used instead. If a blender is used to puree the mixture, transfer the puree back to the Dutch oven.
Gradually add cheeses to the soup, stirring often so that the cheese is well blended into the soup. Leave a small amount of cheddar cheese for topping.
Divide the soup among 4 bowls. Top with the remaining cheddar cheese. Serve hot.
Recipe by The Little Chef at http://littlechefblog.com/broccoli-cheddar-soup/