This Goan Fish Curry from scratch is a quick and healthy Indian-inspired dish packed with tender white fish fillets simmered in a velvety, aromatic coconut sauce. Served alongside fragrant saffron basmati rice enriched with ghee, it delivers a perfectly balanced meal that feels rich yet light. Ready in just 30 minutes, it’s ideal for busy weeknights without compromising on authentic flavor. Goan Fish Curry from Scratch with Saffron Rice

Why You’ll Love This Recipe

  • Ready in just 30 minutes from start to finish
  • Made completely from scratch with fresh, wholesome ingredients
  • Layered spices create deep, authentic flavor
  • Light yet satisfying thanks to flaky fish and basmati rice
  • Naturally gluten-free
  • Perfect balance of creamy coconut, warm spices, and delicate saffron
  • Great for both weeknight dinners and special occasions

Ingredients

(Tip: You’ll find the full list of ingredients and measurements in the recipe card below.)

Saffron rice
1 cup basmati rice
2 cups water
1 pinch saffron threads
1 tablespoon ghee butter

Marinated fish
500 grams white fish fillet (such as blue cod or any firm flaky fish)
1 teaspoon cooking oil
1/2 teaspoon grated ginger
1/2 teaspoon grated garlic
1/4 teaspoon turmeric powder
1 pinch chili powder
1/2 teaspoon salt

Curry paste
1 tablespoon cooking oil
1/2 teaspoon grated ginger
1/2 teaspoon grated garlic
1 cup chopped onion
1/2 teaspoon fennel seeds
1/2 teaspoon cumin seeds
1/4 teaspoon turmeric powder
1 green chili, chopped and seeds removed
2 tablespoons fresh grated coconut
1/2 cup tomato passata or 2 medium tomatoes, finely chopped

Additionally
1 to 2 teaspoons cooking oil
1 sprig curry leaves
1/4 cup finely minced onion
1/2 teaspoon garam masala powder
1 1/2 cups water
Salt to taste
2 tablespoons fresh coriander leaves, chopped

Directions

Prepare the saffron rice. Rinse the basmati rice several times until the water runs clear to remove excess starch. Soak for 30 minutes if time allows, then drain.

In a medium pot, bring 2 cups of water and the rice to a boil. Crush the saffron threads using a mortar and pestle, mix with a few tablespoons of hot water from the pot, then return it to the rice. Add the ghee butter.

Cover with a tight-fitting lid, reduce heat to low, and cook for 15 to 20 minutes until the water is absorbed and the rice is tender. If needed, add a few tablespoons of water and cook a little longer. Remove from heat and let it rest covered for 5 minutes. Fluff gently with a fork.

Marinate the fish. In a bowl, combine the fish fillets with oil, ginger, garlic, turmeric, chili powder, and salt. Mix gently and set aside.

Prepare the curry paste. Heat 1 tablespoon oil in a sauté pan over medium heat. Add chopped onion and green chili, cooking until soft. Stir in grated coconut, cumin seeds, fennel seeds, and turmeric. Cook until fragrant, about 1 minute. Add tomato passata and cook for another minute.

Transfer the mixture to a blender and blend into a smooth paste, adding a splash of water if needed.

Sear the fish. Heat a pan over medium heat and lightly sear the marinated fish for a few minutes on each side. The fish does not need to be fully cooked at this stage.

Build the curry. In a sauté pan, heat 1 to 2 teaspoons oil. Add minced onion and curry leaves, cooking until soft. Stir in the prepared curry paste and garam masala. Bring to a gentle boil.

Add 1 1/2 cups water and simmer until the gravy thickens slightly and the oil begins to separate. Season with salt to taste.

Gently place the seared fish into the gravy without stirring too much. Simmer for 5 to 7 minutes until the fish is fully cooked and tender.

Serve the curry hot with saffron rice and garnish with fresh coriander leaves.

Servings and timing

Servings: 3 servings

Prep time: 10 minutes
Cooking time: 20 minutes
Total time: 30 minutes

Variations

For a creamier sauce, add 2 tablespoons of coconut milk at the end of cooking.

Replace fresh coconut with 2 tablespoons soaked cashews blended into the paste for a slightly richer texture.

Use shrimp instead of fish fillets for a seafood variation. Adjust cooking time to avoid overcooking.

Add diced vegetables such as bell peppers or spinach for extra nutrition and color.

For extra heat, keep the seeds in the green chili or add an additional pinch of chili powder.

Storage/Reheating

Store leftover curry in an airtight container in the refrigerator for up to 2 days. Keep rice stored separately for best texture.

To reheat, warm the curry gently on the stovetop over low heat until heated through. Add a splash of water if the sauce has thickened too much.

Rice can be reheated in a pan with a tablespoon of water, covered, over low heat, or in the microwave until warm.

Freezing is not recommended for best texture, as fish can become slightly dry after thawing.

Goan Fish Curry from Scratch with Saffron Rice FAQs

Can I use frozen fish fillets?

Yes, but thaw them completely and pat dry before marinating to avoid excess water in the curry.

What type of fish works best?

Firm, flaky white fish such as cod, haddock, snapper, or blue cod works very well.

Is soaking basmati rice necessary?

It is optional but recommended. Soaking helps the grains cook evenly and become fluffier.

Can I substitute brown basmati rice?

Yes, but increase the cooking time and water slightly, as brown rice takes longer to cook.

What if I don’t have fresh coconut?

You can use 2 tablespoons of desiccated coconut soaked in warm water for 10 minutes, or soaked cashews blended smooth.

How do I know when the fish is cooked?

The fish should flake easily with a fork and appear opaque throughout.

Can I make this curry ahead of time?

You can prepare the curry sauce ahead, but add and cook the fish just before serving for best texture.

Is this dish very spicy?

It is moderately spiced. You can reduce or increase chili to suit your taste.

Why does the oil separate in the curry?

Oil separating from the gravy indicates that the spices and paste have cooked properly and developed flavor.

Can I skip the saffron in the rice?

Yes, but saffron adds aroma and color. Without it, you will still have flavorful basmati rice with ghee.

Conclusion

This Goan Fish Curry with saffron rice brings together fresh ingredients, layered spices, and simple cooking techniques to create a deeply satisfying meal in just 30 minutes. The tender fish, aromatic coconut gravy, and fragrant basmati rice make it a balanced dish that feels both comforting and refined. Whether you’re new to Indian cooking or looking for a reliable weeknight favorite, this recipe delivers authentic flavor with ease.

Print

Goan Fish Curry from Scratch with Saffron Rice

Goan Fish Curry from Scratch with Saffron Rice

5 Stars 4 Stars 3 Stars 2 Stars 1 Star

No reviews

A quick and flavorful Goan-style fish curry made from scratch with tender white fish simmered in a spiced coconut gravy, served alongside fragrant saffron basmati rice enriched with ghee.

  • Author: Sophia
  • Prep Time: 10 minutes
  • Cook Time: 20 minutes
  • Total Time: 30 minutes
  • Yield: 3 servings
  • Category: Dinner
  • Method: Stovetop
  • Cuisine: Indian
  • Diet: Gluten Free

Ingredients

  • Saffron Rice:
  • 1 cup basmati rice
  • 2 cups water
  • 1 pinch saffron threads
  • 1 tablespoon ghee
  • Marinated Fish:
  • 500 grams white fish fillet (such as blue cod or firm flaky fish)
  • 1 teaspoon cooking oil
  • 1/2 teaspoon grated ginger
  • 1/2 teaspoon grated garlic
  • 1/4 teaspoon turmeric powder
  • 1 pinch chili powder
  • 1/2 teaspoon salt
  • Curry Paste:
  • 1 tablespoon cooking oil
  • 1/2 teaspoon grated ginger
  • 1/2 teaspoon grated garlic
  • 1 cup chopped onion
  • 1/2 teaspoon fennel seeds
  • 1/2 teaspoon cumin seeds
  • 1/4 teaspoon turmeric powder
  • 1 green chili, chopped and seeds removed
  • 2 tablespoons fresh grated coconut
  • 1/2 cup tomato passata or 2 medium tomatoes, finely chopped
  • Additionally:
  • 1 to 2 teaspoons cooking oil
  • 1 sprig curry leaves
  • 1/4 cup finely minced onion
  • 1/2 teaspoon garam masala powder
  • 1 1/2 cups water
  • Salt to taste
  • 2 tablespoons fresh coriander leaves, chopped

Instructions

  1. Rinse basmati rice until water runs clear. Soak for 30 minutes if time allows, then drain.
  2. Bring 2 cups water and rice to a boil. Crush saffron, mix with a little hot water, and add to the pot along with ghee. Cover and cook on low for 15–20 minutes until tender. Rest 5 minutes and fluff.
  3. In a bowl, marinate fish with oil, ginger, garlic, turmeric, chili powder, and salt. Set aside.
  4. Heat oil in a sauté pan. Cook chopped onion and green chili until soft. Add coconut, cumin seeds, fennel seeds, and turmeric. Stir briefly, then add tomato passata. Cook 1 minute.
  5. Blend the mixture into a smooth paste, adding a splash of water if needed.
  6. Sear marinated fish lightly on both sides for a few minutes; it does not need to cook through.
  7. In a pan, heat oil and sauté minced onion with curry leaves until soft. Stir in curry paste and garam masala. Bring to a gentle boil.
  8. Add 1 1/2 cups water and simmer until slightly thickened and oil begins to separate. Season with salt.
  9. Gently place fish into the gravy and simmer 5–7 minutes until fully cooked and opaque.
  10. Garnish with fresh coriander leaves and serve hot with saffron rice.

Notes

  • Add 2 tablespoons coconut milk at the end for a creamier sauce.
  • Soaked cashews can replace fresh coconut for richness.
  • Shrimp can substitute fish; reduce cooking time accordingly.
  • Adjust chili for preferred spice level.
  • Store curry up to 2 days in the refrigerator; reheat gently.
  • Freezing is not recommended for best fish texture.

Nutrition

  • Serving Size: 1 serving
  • Calories: 520 kcal
  • Sugar: 6 g
  • Sodium: 640 mg
  • Fat: 18 g
  • Saturated Fat: 7 g
  • Unsaturated Fat: 9 g
  • Trans Fat: 0 g
  • Carbohydrates: 60 g
  • Fiber: 3 g
  • Protein: 32 g
  • Cholesterol: 70 mg

Similar Posts

Leave a Reply

Your email address will not be published. Required fields are marked *

Recipe rating 5 Stars 4 Stars 3 Stars 2 Stars 1 Star