Prep the oven and dish: Preheat the oven to 375°F (190°C). Lightly grease a 9x13-inch baking dish with cooking spray or butter.
Par-cook the broccoli: If using fresh broccoli, steam or microwave for 2–3 minutes until just tender-crisp.
If using frozen, thaw and pat dry. You want the broccoli to be bright and not watery.
Sauté aromatics: In a medium saucepan, melt the butter over medium heat. Add onion and cook 3–4 minutes until softened.
Stir in garlic and cook 30 seconds until fragrant.
Make the sauce: Sprinkle in flour and whisk for 1 minute to form a roux. Slowly add chicken broth and whisk until smooth, then add milk. Simmer 3–5 minutes, stirring, until slightly thickened.
Season and enrich: Stir in salt, pepper, onion powder, and paprika.
Off the heat, add 1 cup cheddar and the mozzarella/Jack (if using). Stir until melted and smooth, then fold in sour cream or yogurt.
Combine in the dish: Add the cooked chicken and broccoli to the baking dish. Pour the cheese sauce over and gently mix to coat everything evenly.
Add the topping: In a small bowl, combine breadcrumbs with olive oil or melted butter.
Sprinkle the remaining 1/2 cup cheddar over the casserole, then the breadcrumb mixture on top.
Bake: Place in the oven and bake 20–25 minutes until bubbly around the edges and the top is golden.
Rest and serve: Let it rest 5–10 minutes to set slightly. Serve warm as-is or with rice, buttered noodles, or crusty bread.