In a large pot, melt 1 1/2 tablespoons of the butter over medium heat. Add the carrots, celery, and onion, and sauté for 3 to 4 minutes. Incorporate the garlic and cook for an additional 30 seconds.
Add the chicken broth, cubed potatoes, and thyme, seasoning with salt and pepper as desired. Bring the mixture to a boil over medium-high heat. Reduce the heat to medium, cover the pot, and simmer for 15 minutes. Stir in the broccoli and continue cooking for another 5 minutes, or until all the vegetables are tender.
Meanwhile, in a medium saucepan over medium heat, melt the remaining 4 tablespoons of butter. Stir in the flour, cooking and whisking continuously for 1 minute. Gradually pour in the milk, whisking vigorously to prevent lumps. Continue stirring until the mixture thickens slightly, then mix in the heavy cream and remove from heat.
Once the vegetables in the soup are fully tender, stir the thickened milk mixture into the pot. Remove from heat and blend in the cheddar cheese and Parmesan cheese, stirring until fully melted. Serve the soup warm.