
Paneer Biryani with Saffron and Fried Onions
Golden-seared paneer cubes in a yogurt-spice masala, layered with 70% cooked basmati, saffron milk, fried onions and herbs, then steamed on dum until every grain is fragrant and fluffy.
- Prep
- 45 min
- Cook
- 1 hr
- Wait
- 40 min
- Total
- 2 hr 25 min
- Makes
- About 8 cups (6 generous servings)
Steps
Before you start
- Rinse the rice and soak it for 30 minutes; the marinade also needs at least 30 minutes, so start both together.
- Use a heavy-bottomed pot of 5-6 quart (4.5-5.5 L) with a tight lid; you will also need foil to seal it.
- Warm the milk gently and steep the saffron in it 15 minutes or more before layering.
- Store-bought crispy fried onions work, or fry your own in step 2 (start that while the paneer marinates).
Marinate the paneer
- In a large bowl whisk the yogurt, ginger-garlic paste, chili powder, turmeric, 1 teaspoon of the garam masala and the marinade salt until smooth.
- Gently fold in the paneer cubes to coat.
- Cover and leave at room temperature for 30 minutes (or refrigerate up to 4 hours).
- Meanwhile rinse and soak the rice in cold water, and steep the saffron in the warm milk.
+ Show details− Hide details
Ready when: Paneer is evenly coated with no streaks of plain yogurt
Tip: Handle paneer gently so the cubes do not crumble.
Fry the onions
- If making your own birista, heat the 1 cup (240 ml) frying oil in the 12-inch (30 cm) skillet over medium-high heat and fry the sliced onions, stirring often, for 12-15 minutes until deep golden brown.
- Lift out with a slotted spoon onto paper towels, where they crisp as they cool.
- Salt lightly.
- Measure 1 cup (60 g); this is the fried onions used below.
- If using store-bought, skip this step.
- Pour off the frying oil and wipe the skillet before step 3.
+ Show details− Hide details
Ready when: Onions are deep golden brown and crisp once cooled, not dark or bitter
Tip: Pull them out slightly lighter than you want; they keep darkening from residual heat.
Sear the paneer
- Heat 2 tablespoons of the oil in a 12-inch (30 cm) skillet over medium-high heat.
- Lift the paneer from the marinade with a spoon, letting excess drip back into the bowl (keep the leftover marinade).
- Sear the cubes 1-2 minutes per side until lightly golden on two or three sides.
- Transfer to a plate.
+ Show details− Hide details
Ready when: Cubes have golden spots and hold their shape
Tip: Do not overcrowd the pan; cook in two batches if needed so the paneer sears rather than steams.
Cook the masala
- In the same skillet, heat the remaining 2 tablespoons oil over medium heat.
- Add the tomatoes and green chilies and cook 6-8 minutes, mashing, until soft and the oil separates at the edges.
- Lower the heat to low and stir in the reserved marinade, cooking 3-4 minutes just until thick and no longer raw-smelling.
- Fold in the seared paneer and half the fried onions (½ cup / 30 g).
- Remove from the heat.
+ Show details− Hide details
Ready when: Masala is thick and jammy with oil shimmering at the edges
Tip: Keep the heat low once the yogurt goes in or it may split.
Parboil the rice
- Bring the water to a rolling boil in a 6-quart (5.5 L) pot with the salt, cardamom, cloves, cinnamon, bay leaves, cumin seeds and lemon juice.
- Add the drained rice and boil uncovered over high heat for 5-6 minutes.
- Test a grain: it should snap into a firm, white-cored piece when pressed (about 70% cooked), and be fully elongated.
- Drain immediately in a colander and spread lightly; do not rinse.
+ Show details− Hide details
Ready when: Grains are long and break easily but still have a firm, opaque white center
Tip: Overcooked rice turns mushy during dum; err on the underdone side.
Layer the biryani
- Spread half the paneer masala in the bottom of the heavy 5-6 quart pot.
- Top with half the rice (remove the larger whole spices if you like), then sprinkle with half the mint, half the cilantro and ¼ cup (15 g) fried onions.
- Repeat with the remaining masala, rice, herbs and the last ¼ cup onions, finishing with a rice layer on top.
- Drizzle the saffron milk over the surface in streaks, then the melted ghee and rose water (if using).
- Sprinkle the remaining 1 teaspoon garam masala on top.
+ Show details− Hide details
Ready when: Even layers with golden saffron streaks visible on top
Tip: Do not press the rice down; loose layers let steam circulate.
Seal and dum cook
- Cover the pot with foil, then press the tight lid on to seal.
- Cook over high heat for 2-3 minutes until you see or hear steam escaping, then reduce to the lowest heat, set the pot on a tawa if you have one, and cook 25 minutes.
+ Show details− Hide details
Ready when: Fragrant steam rises when the lid is lifted; rice is fully tender and grains are separate
Tip: Do not open the lid during dum or the steam escapes and the top rice stays hard.
Rest and serve
- Turn off the heat and leave the pot sealed for 10 minutes so grains settle and finish steaming.
- Open the lid and gently fluff from the edge toward the center with a fork, lifting from the bottom so the layers mix with the saffron rice and paneer.
- Serve hot.
+ Show details− Hide details
Ready when: Rice is long, fluffy, and tender with no hard core; paneer is soft and juicy
Tip: Serve with raita and sliced cucumber and onion salad.
Good to know
Tips
- Use aged basmati; fresh rice turns sticky.
- Salt the rice water well: it should taste noticeably salty, since the rice absorbs it.
- Keep the masala slightly wet and saucy; it supplies steam for the dum.
- Sear the paneer; unseared paneer turns rubbery or crumbles in the steam.
Make ahead
Marinate the paneer up to 4 hours ahead in the refrigerator, and make the masala up to 1 day ahead. Bring to room temperature before layering with freshly parboiled rice.
Storage & reheating
Room temperature: up to 2 hours. Refrigerator: airtight container up to 3 days. Freezer: up to 1 month (paneer texture softens slightly). Reheat portions covered in the microwave with 1 tablespoon water per serving for 2-3 minutes, stirring halfway, or in a covered pan over low heat until steaming hot.
Substitutions
- paneer → extra-firm tofu or par-fried potatoes and cauliflower. Press tofu well and sear the same way; vegetable versions need about 5 minutes longer in the masala.
- full-fat plain yogurt → thick unsweetened coconut or cashew yogurt. Makes the dish dairy-free apart from paneer; use a swap for ghee too.
- saffron threads → ¼ teaspoon turmeric in the milk. Gives color but not the same aroma.
- ghee → neutral oil or butter. Butter gives a similar richness; oil is fine for vegan.
More biryani
See all →Find more like this
- Meal
- Dinner
- Cuisine
- North Indian
- Main ingredient
- Basmati Rice
- Method
- Stovetop





