Prepare the Fish: Pat the fish fillets dry with paper towels and season both sides with kosher salt and black pepper. Cut the fish into smaller portions if desired for easier frying.
Prepare the Batter: In a large mixing bowl, whisk together the flour, cornstarch (or rice flour), garlic powder, onion powder, paprika (if using), kosher salt, black pepper, and red pepper flakes (optional). In a separate bowl, lightly beat the egg and add it to the dry ingredients. Gradually pour in the very cold beer, whisking until the batter is smooth. The batter should have a consistency similar to thick pancake batter.
Heat the Oil: In a deep, heavy-bottomed skillet or pot, heat canola oil over medium-high heat until it reaches 350°F (180°C). You’ll need enough oil to fully submerge the fish pieces, so aim for at least 2-3 inches of oil in the pan.
Fry the Fish: Working in batches, dip each fish fillet into the beer batter, ensuring it is well coated, and gently lower it into the hot oil. Fry for about 4-5 minutes, turning occasionally, until the fish is golden brown and crispy on all sides.
Drain the Fish: Once the fish is fried to a crispy golden brown, use tongs or a slotted spoon to transfer the fillets to a wire rack or a plate lined with paper towels to drain any excess oil. Season the fish with a pinch of salt immediately after frying, if desired.
Serve: Serve the crispy beer-battered fish hot with your favorite sides such as fries, coleslaw, or a simple salad. Don’t forget to add tartar sauce, lemon wedges, or malt vinegar for that classic fish-and-chips experience!