Preheat your oven to 350°F (175°C) and lightly grease a 9x13-inch baking dish.
Bring a large pot of water to a boil and add a tablespoon of salt. Blanch the broccoli florets for just 3 minutes until bright green and slightly tender but still crisp.
Immediately transfer broccoli to an ice bath to stop the cooking process. Once cooled, drain thoroughly and pat dry with paper towels.
In a large skillet over medium heat, melt 2 tablespoons of butter. Add the diced onion and cook until translucent, about 5 minutes.
Add the garlic and cook for another 30 seconds until fragrant.
In a large mixing bowl, combine the sautéed onion and garlic with the condensed soup, sour cream, mayonnaise, salt, pepper, and paprika. Mix until thoroughly combined.
Fold the blanched broccoli into the creamy mixture, ensuring each floret gets coated in the sauce.
Gently stir in the 2 cups of shredded cheddar cheese.
Transfer this mixture to your prepared baking dish, spreading it out into an even layer.
In a medium bowl, combine the crushed crackers with the melted butter until every crumb is lightly coated.
Stir in the remaining 1/2 cup of cheddar cheese and the Parmesan cheese.
Sprinkle this mixture evenly over the broccoli layer, covering the entire surface.
Bake the casserole uncovered for 30-35 minutes until the topping is golden brown and the edges are bubbling.
Optional: For an extra-golden finish, place under the broiler for the last 1-2 minutes, watching carefully to prevent burning.
Allow the casserole to rest for 5-10 minutes before serving.