Preheat oven to 425 degrees. Place cauliflower on baking sheet, drizzle with olive oil and toss to evenly coat, then spread into an even layer and season lightly with salt and pepper.
Bake in preheated oven until golden, about 25 minutes. Remove from oven and set aside.
In a large pot, melt butter over medium heat. Add in onion and saute until tender, about 4 - 5 minutes. Add in flour and cook, stirring constantly 1 1/2 minutes, adding in garlic during last 30 seconds of cooking.
While whisking, slowly pour in milk followed by chicken broth and cream. Add in parsley, thyme, bay leaf, sugar, roasted cauliflower and season soup with salt and pepper to taste (I used 1/2 tsp salt but this may vary depending on how much salt you added to your cauliflower and how much salt you prefer).
Bring to a boil, stirring constantly, then reduce heat to low. Puree 3 cups of the soup in a blender (being careful as your working with hot liquids) and return to soup in pot.
Remove from heat and stir in sharp white cheddar and parmesan cheese. Serve warm garnished with additional shredded white cheddar and serve with fresh bread or croutons if desired.