Arrange cauliflower, onion, and garlic in a single layer on a greased baking sheet. Drizzle olive oil evenly over vegetables and season with salt and pepper to taste. Roast vegetables at 400F 20-25 minutes or until very tender.
In a medium pot, melt butter over medium-high heat. Whisk flour into butter until completely smooth and cook 1 minute until golden-brown. Gradually whisk milk, cream, and chicken broth into flour mixture until completely smooth. Cook over medium-high heat, stirring occasionally until simmering and slightly thickened,
Place roasted cauliflower mixture in a high-speed blender and top with milk mixture. Blend on high speed until completely creamy.
Return soup to pot and bring to a low simmer over medium-high heat, then reduce heat and simmer at low 10 minutes. Remove soup from heat and whisk in Parmesan until melted, then stir in parsley and salt and pepper to taste. Serve soup hot and enjoy!