Preheat oven to 400 degrees and generously butter a 9" x 13" casserole dish. Set aside.
Fill a large pot halfway with water and bring to a boil over high heat. Cook cauliflower and broccoli florets for 6 minutes.
In a large non-stick skillet, melt 1 Tbsp butter. Add the breadcrumbs and toast until fragrant and browned. Set aside and wipe out the skillet with a paper towel.
Remove cauliflower and broccoli florets from heat, strain then place back in the empty pot. Return the pot to the heat and toss the veggies for 2–3 minutes to release steam and dry them out. Remove from the heat and set aside.
In the large clean skillet, melt 2 Tbsp butter. Sauté onion and garlic in the butter over medium heat for about 2 minutes or until onion is translucent. Add flour and red pepper flakes, whisk to combine then cook for 1 minute. Slowly whisk in milk until flour is dissolved. Cook for 2 minutes until slightly thickened.
Stir in cheeses until melted then season with salt and pepper to taste. Pour the cheese sauce over the cauliflower and broccoli florets and stir to combine. Sprinkle with 1 tsp of salt and ½ tsp pepper.
Pour the cheesy cauliflower mixture into the prepared 9" x 13" baking dish. Sprinkle with toasted breadcrumbs and bake 20–25 minutes or until hot and bubbly. Cool for at least 5 minutes before serving.