Whisk together buttermilk and egg in a shallow dish.
In another shallow dish, combine flour, cornstarch, smoked paprika, salt, pepper, and garlic powder.
Place breadcrumbs in a third shallow dish.
Dredge onion rings in the flour mixture, then dip them in the buttermilk mixture, and finally coat them in breadcrumbs. Set aside for 10-15 minutes to allow the coating to adhere.
Heat oil in a large cast iron skillet or heavy-duty pot to 350°F to 375°F.
Fry 3-4 onion rings at a time for 2-3 minutes, flipping halfway through, until light golden brown and crispy.
Transfer fried onion rings to a wire rack set over a baking sheet to drain excess grease. Repeat with remaining onion rings.