In a large pot, melt butter over medium heat. Add onion and garlic. Cook until onion is tender and almost transparent.
Add milk, cream and chicken broth. Add carrots and broccoli. Bring to a boil, reduce heat and let simmer for 15-20 minutes until carrots and broccoli are tender. Puree about 3/4 of soup in batches in a blender until somewhat smooth. I like to keep 1/4 of the soup chunky with whole bits of vegetables. If you'd like, you can puree the entire soup for a smooth finish. Return puree back into the pot. Alternatively, you can use an immersion blender in the pot.
In a small bowl, whisk together cornstarch and water until smooth. Add slurry mixture into the soup pot and stir to distribute. Bring soup to a boil to a cook out cornstarch. Remove from heat.
Add shredded cheese to soup. Stir until cheese is melted. Season soup with salt and pepper.
Ladle soup into bread bowls. Garnish with additional cheese.
To make soup vegetarian friendly, substitute vegetable broth for chicken broth