Whisk flour, cornstarch, baking powder, salt, black pepper, paprika, and garlic powder in a bowl. Slowly add cold water (or sparkling water) while whisking until smooth. If using an egg, beat it separately before mixing in.
In a deep fryer or skillet, heat oil to 350-375°F (175-190°C). Maintaining this temperature ensures crispy, golden fish.
Pat fillets dry, then lightly coat with flour to help the batter stick.
Dip each fillet into the batter, letting excess drip off. Fry in hot oil for 3-5 minutes per side until crispy and golden brown.
Transfer to a paper towel-lined plate to remove excess oil. Serve immediately with lemon wedges and your favorite dipping sauce.