In a large pot over medium-high heat add 2 of the 6 tablespoons butter and melt. Cook 1 chopped small onion, 1 cup chopped celery, 1 cup chopped carrots, and 3 minced garlic cloves until tender about 3-4 minutes.
Add 3 cups chicken broth and 3 cups potatoes, peeled and cut into one inch cubes and bring to a boil. Cover and cook for 15 minutes or until tender. Add 1 cup chopped broccoli and 1 cup chopped cauliflower the last 5 minutes and cook until tender.
In a medium-sized saucepan add the remaining 4 tablespoons butter and melt over medium-high heat. Add the ¼ cup flour and create a roux cooking for 3-4 minutes. Slowly whisk in 3 cups half and half.
Pour into the soup and stir. Add 2 cups shredded cheddar cheese and stir. Let simmer until thickened and cheese has melted and salt and pepper to taste.