To roast fish without drying it out, use high heat for a short cooking time, ensure the fish is lightly oiled, and avoid overcooking by checking for flakiness or using a thermometer.
Fish is delicate and cooks quickly, making it susceptible to drying out if overcooked. The primary strategy for roasting fish that remains moist and tender is to use a relatively high oven temperature combined with a short cooking duration. Preheat your oven to 400-425°F (200-220°C). Before roasting, pat the fish fillets or whole fish dry with paper towels; this helps create a better sear and prevents steaming. Lightly brush or spray the fish with a high-smoke-point oil (like olive or avocado oil) to prevent sticking and promote even cooking. Season simply with salt and pepper, or add herbs and citrus. Place the fish on a parchment-lined baking sheet or a lightly oiled roasting pan. The cooking time will vary depending on the thickness of the fish, but generally, it's about 10-15 minutes per inch of thickness for fillets. Crucially, avoid overcooking by checking for doneness as soon as the fish appears opaque and flakes easily with a fork at its thickest point. For precise results, especially with thicker cuts, an instant-read thermometer should read 145°F (63°C).
For very lean fish, consider adding a thin layer of butter or a slice of citrus on top of the fillet before roasting to further help retain moisture.