In a big pot on medium heat, melt 1 1/2 tablespoons of butter. Put carrots, celery, and onion in the pan and cook for 3 to 4 minutes. Add garlic and cook for another 30 seconds.
Add chicken broth, potatoes, thyme, salt, and pepper to taste. Heat until boiling on medium-high heat, then lower the heat to medium, cover with a lid, and cook for 15 minutes. Add broccoli and cook for an additional 5 minutes or until the vegetables are soft.
Next, melt the rest of the 4 tablespoons of butter in a small saucepan over medium heat. Add flour and cook while stirring constantly for 1 minute. While stirring quickly, pour milk slowly (keep stirring until there are no lumps).
Cook while stirring continuously until the mixture starts to thicken, then add heavy cream. Take the pot off the stove and add the cooked vegetables to the soup. Mix well. Take the mixture off the heat and mix in cheddar and parmesan cheese until they melt. Serve hot