Roasted Fish with Orange and Rosemary
This foolproof recipe for roasted fish with bright citrus vinaigrette turns out moist and full of flavor every single time. The fish is roasted at a high temperature to brown the top, while a bed of citrus and herbs steams the bottom and infuses it with flavor. This is a great weeknight recipe that's mostly hands-off and takes less than 30 minutes, yet still impressive enough to serve to company.
This post may contain affiliate links.

As a professional cook who comes from a big fishing family, I take my fish seriously!
There are plenty of roasted fish recipes out there, but this is one of my favorites to prepare in the winter, when it's too cold to grill and citrus is in peak season. It's so simple, yet so satisfying!
I roast the fish at a high temperature to slightly brown the top, while the bottom steams over a layer of citrus and herbs to retain moisture. The oranges and herbs add lots of flavor and also help prevent the fish from sticking to the pan.
This cooking method and flavor profile work with any type of fish, so you can use whatever is fresh and in season, preferably something that's local and sustainable.
While the fish cooks, whisk together a simple vinaigrette with minced shallot, Dijon mustard, rosemary, and orange. Spoon it over the fish right before serving for a boost of freshness and acidity.
This is a great weeknight recipe since it cooks in under 20 minutes and takes only 10 minutes to prep. But it's also elegant enough to serve for a dinner party, and would even be great on a holiday! The flavors would be perfect on Christmas Eve as part of the Feast of the Seven Fishes.
Looking for other baked fish recipes? Try this easy baked flounder oreganata, this succulent Sicilian-style baked salmon or a light lemon herb baked fish.
Why This Recipe Works
- A simple oven roasting method creates a brown top and moist interior.
- Takes just 20 minutes in the oven with only 10 minutes of active prep.
- Can be made with any type of fish, both fresh or frozen.
- Served with a bright, zippy vinaigrette to cut through the richness.
- Requires only six easy-to-find ingredients!

How to choose the best fish
Choose fish fillets that are smooth, translucent, and firm with no strong fishy smell. When pressed, they should spring back easily rather than leaving an indentation.
If you don't have access to high-quality fresh seafood, good frozen fillets work well too. Shop at a reputable seafood market or online store.
Whether buying fresh or frozen, always look for wild-caught and sustainably sourced fish whenever possible!
Ingredient Notes
Fish fillets - This recipe works with any type of fish, so it's best to seek out anything that's local, in season and/or sustainable. Good options include barramundi, sea bass, snapper, grouper, flounder, or haddock. Try to use fillets that are similar in size so they cook at the same rate.
Oranges - Use different varieties like blood oranges or Cara Cara oranges for a more unique flavor and striking presentation. Choose oranges that are heavy for their size - that means they're the juiciest!
Fresh rosemary - The recipe relies on fresh herbs, as dried herbs don't have the same fresh pop of flavor. If you don't like rosemary, you can use fresh thyme instead.
Dijon mustard - This emulsifies and livens up the vinaigrette! You could also use a whole grain mustard for a slightly different flavor.
Olive oil - Use extra virgin olive oil for best results. Learn how to choose the right one in my guide to Italian olive oils.
*Find the full ingredient list in the recipe card below!
Helpful Equipment
- Oven
- Paper towels
- Baking sheet
- Microplane grater
- Fish spatula
How to Make Rosemary Orange Baked Fish

- Preheat the oven to 400°F.
- Use paper towels to pat each fillet very dry.
Pro Tip: Patting dry the fish thoroughly removes surface moisture, which is important for achieving a browned top.
- Slice one orange into thin rounds. Drizzle a little bit of olive oil on a baking sheet, then scatter the orange slices and rosemary sprigs all around.
- Place the fish fillets on top, then drizzle with a little more olive oil and season both sides with salt and pepper.
- Bake for about 15-20 minutes, or until the flesh is opaque throughout.
Pro Tip: The total cooking time will depend on the thickness of the fillets. Start checking for doneness at 15 minutes.
- While the fish roasts, make the vinaigrette. Combine the shallots, Dijon mustard, minced rosemary, salt and pepper in a bowl.
- Use a microplane grater to finely zest one orange, then add it to the bowl along with the juice from the remaining two oranges (about ⅓ cup).
- Slowly stream in 3 tablespoons of olive oil and whisk until emulsified.
- When the fish is done, use a spatula to carefully transfer each fillet to a plate, along with a few of the orange slices and rosemary sprigs for garnish (optional).
- Spoon the orange vinaigrette over top and serve immediately with extra vinaigrette on the side.
Coley's Tips For Success
- Use fish fillets that are similar in size so they cook at the same rate. If the pieces vary significantly, fold the thinner end under itself for a more uniform thickness.
- This recipe can be made with frozen fish without defrosting first. Rinse the fillets under water to remove ice crystals, pat dry, and increase cooking time to about 25-30 minutes total.
- Make sure you season the fish very well on both sides or it will be bland. Thicker pieces will need heavier seasoning.
- Cook time will depend on how thick your fillets are. As a general rule, you should bake fish for about 10-12 minutes per inch of thickness. Adjust the time based on the type of fish.
- You can tell if the fish is done by poking a skewer gently into the thickest part of the flesh. If it goes through with no resistance, it's fully cooked. If there's resistance, it needs a few more minutes.

Variations
- Try different kinds of oranges and other fresh herbs, like thyme or sage.
- Go for other types of citrus, like Meyer lemons or even grapefruit.
- Try using a richer, fattier fish like Pacific salmon or yellowfin tuna. You can cook these slightly less than you would a white fish, as they can be served medium-rare if you prefer.
What to Serve with Baked Fish
If you want a different kind of sauce for your roasted fish, I suggest a classic beurre blanc. You can also go for something lighter like Sicilian salmoriglio or Italian salsa verde.
For sides, try these crispy roasted potatoes and onions, a tableside Caesar salad or this simple spinach with butter and parmesan.
And if you have leftovers, repurpose them into delicious Cajun fish cakes or mashed potato fish cakes!
How to Store and Reheat Baked Fish
Store fish in an airtight container for up to 3 days. To reheat, place in a baking dish or sheet pan, add a drizzle of olive oil or water, cover with foil, and warm up in a 300°F oven for about 10-15 minutes.
FAQs
The fish is ready when it turns opaque and flakes easily with a fork. Another easy way to check is to gently insert a skewer into the thickest part of the fillet. If it slides in easily, the fish is done. If it still feels firm or resistant, give it a few more minutes in the oven. If using a thermometer, the internal temperature should reach 145°F at the thickest part.
This technique works for most kinds of fish, so use whatever is fresh and in season, preferably local and sustainable. Barramundi, sea bass, flounder or grouper, cod or halibut, or richer varieties like mackerel, salmon and tuna.
Yes, you can follow the same method for a whole fish like snapper or branzino, just extend the cooking time to about 15-20 minutes per pound. A small whole fish will take around 20-25 minutes, while a medium-sized one will take anywhere from 25 to 35 minutes.
Yes, roasted fish can be made with frozen fish without defrosting first. First rinse the fillets under water to remove ice crystals, pat dry, and increase cooking time to about 25-30 minutes. Make sure you source high quality frozen fish from a reputable source.
Did you LOVE this recipe? Please leave a star ⭐️ rating and comment and tag your creations @ColeyCooks on Instagram!
Rosemary Orange Baked Fish
Ingredients
- 4 6-ounce fish fillets such as barramundi, sea bass, snapper or grouper
- 3 tablespoons extra virgin olive oil plus more for drizzling
- kosher salt and freshly cracked black pepper to taste
- 3 oranges
- 4 sprigs fresh rosemary plus 2 teaspoons minced
- 1 shallot medium, finely minced
- 1 tablespoon Dijon mustard
Instructions
- Preheat the oven to 400°F.
- Use paper towels to pat each fillet very dry.
- Slice one orange into thin rounds. Drizzle a little bit of olive oil on a baking sheet, then scatter the orange slices and rosemary sprigs all around.
- Place the fish fillets on top, then drizzle with a little more olive oil and season both sides with salt and pepper.
- Bake for about 15-20 minutes, or until the flesh is opaque throughout.
- While the fish roasts, make the vinaigrette. Combine the shallots, Dijon mustard, minced rosemary, salt and pepper in a bowl.
- Use a microplane grater to finely zest one orange, then add it to the bowl along with the juice from the remaining two oranges (about ⅓ cup).
- Slowly stream in 3 tablespoons of olive oil and whisk until emulsified.
- When the fish is done, use a spatula to carefully transfer each fillet to a plate, along with a few of the orange slices and rosemary sprigs for garnish (optional).
- Spoon the orange vinaigrette over top and serve immediately with extra vinaigrette on the side.
Notes
- Patting dry the fish thoroughly removes surface moisture, which is important for achieving a browned top.
- Use fish fillets that are similar in size so they cook at the same rate. If the pieces vary significantly, fold the thinner end under itself for a more uniform thickness.
- This recipe can be made with frozen fish without defrosting first. Rinse the fillets under water to remove ice crystals, pat dry, and increase cooking time to about 25-30 minutes total.
- Make sure you season the fish very well on both sides or it will be bland. Thicker pieces will need heavier seasoning.
- Cook time will depend on how thick your fillets are. As a general rule, you should bake fish for about 10-12 minutes per inch of thickness. Adjust the time based on the type of fish and check for doneness at 15 minutes or less if the fillets are very thin.
- You can tell if the fish is done by poking a skewer gently into the thickest part of the flesh. If it goes through with no resistance, it's fully cooked. If there's resistance, it needs a few more minutes.










