Heat oven to 375°F. Lightly grease a 9×13-inch baking dish.
Toss asparagus with olive oil, a pinch of salt, pepper, and paprika.
Spread on a sheet pan and roast 8–10 minutes until crisp-tender. Set aside.
Melt 2 tbsp butter in a skillet over medium heat. Soften onion for 3 minutes.
Stir in garlic for 30 seconds. Sprinkle in flour and cook, whisking, 1 minute.
Slowly whisk in milk. Simmer, stirring, until thick and smooth, 3–5 minutes.
Off heat, stir in sour cream, cheddar, Parmesan, lemon zest, remaining salt, pepper, and flakes.
Combine roasted asparagus and cheese sauce in the baking dish. Spread evenly.
Melt remaining 1 tbsp butter. Toss with panko until evenly moistened.
Scatter crumbs over casserole. Bake 15–18 minutes until bubbling and golden. Rest 5 minutes.