Heat the oil in a large pot or deep fryer to 375°F (190°C). Use a thermometer to maintain a steady temperature this keeps rings crispy, not greasy.
Peel the onions and cut them crosswise into rings. Gently separate layers so you have individual circles ready to batter.
In one bowl, whisk together the flour, cornstarch, salt, garlic powder, paprika, and baking powder until well‑blended.
In a separate bowl, whisk the milk and egg until smooth.
Pour the wet mixture into the dry ingredients and whisk until a smooth batter forms with no lumps.
Dip a few onion rings at a time into the batter, turning to coat completely and letting excess drip back into the bowl.
Carefully place the battered rings into the hot oil, spacing them so they don’t touch. Fry in batches for 2–3 minutes, turning once, until they’re golden brown and crispy.
Remove with a slotted spoon and transfer to a paper towel‑lined plate or cooling rack to drain and stay crisp.
Repeat with remaining onions. Season with a light sprinkle of salt while still hot.