In a small to medium-sized stock pot over Medium-Low heat, melt 1 Tbl. butter. Add onions and garlic. Cook until softened, stirring, for about 5 minutes.
Add rest of butter and melt. Sprinkle with flour and add salt, pepper and cayenne. Lower heat to Medium, and continue stirring and sautéing another 3 - 5 minutes to cook out raw flour taste. Do not brown flour! (Turn down heat a little if needed.)
Slowly stir and whisk in broth, milk, cream, chicken bouillon base, and bay leaf. Add carrots and broccoli. Bring to a very low simmer, and continue cooking, stirring often, until thickened, and veggies are tender. (About 25 minutes over Medium-Low to Low heat with lid tilted).
Once thick, add cheeses, a little bit at a time, stirring after each addition, until melted and smooth. Adjust salt and pepper to taste.
Ladle into small bowls, serve with crusty bread for dipping, and enjoy!
If you'd like, once soup is mostly done (before adding the cheeses), you can either remove 1 (8 oz.) ladleful of the soup and pour it into a blender. Place the lid on and pulse until pureed, or still small pieces. Add back to pot and stir in. Or you can use a hand-held immersifier and blend as many florets as you want.