Heat milk & soak saffron strands. Stir in the rose water or kewra water.
Slice onions thin and even. Squeeze them gently to separate the layers completely & measure. Slice green chili & deseed if needed.
Rinse & drain mint leaves and coriander leaves. Chop and set aside.
Rinse basmati rice well and soak it in water for at least 30 minutes.
Heat a tablespoon ghee in a heavy bottom pan. When it is hot enough, place the paneer block/s gently and fry it on a medium high heat until golden on both the sides.
Remove to a plate and cool down completely. Later dice each block to 10 to 12 portions. Keep aside.
To the same pan, add a tsp of ghee, cashews and fry until light golden. Stir in the raisins & fry until they turn plump. Remove to a plate and keep aside.
Wipe the pan with some kitchen tissues to remove burnt bits of nuts or paneer.
Pour the rest of the ghee (reserve a tablespoon for later) and add the sliced onions. Fry on a medium high heat, stirring often & spread them in the pan.
Continue to fry for a few minutes, regulating the flame from high to medium and then to low, until the onions turn golden brown but not burnt. (Check images in the post)
Remove 2 tbsps of these fried onions to a plate and set aside.
Reduce the heat & stir in the whole spices. Saute ginger garlic & green chilli until aromatic.
Add salt & spices - biryani/ garam masala, Coriander powder, Cumin powder, Kashmiri red chilli powder & turmeric.
Pour the tomato puree and cook until it turns thick & aromatic.
Stir in 2 tbsps of the prepared masala with the whisked yogurt.
Turn the heat to low and pour the spiced yogurt to the pot.
Stir well and cook on a low heat until the mixture turns thick and traces of oil are seen on top.
Turn off the heat & stir in hot water.
Taste test and adjust salt or garam masala if you want. Add ¾ of the prepared mint leaves, ¾ of the coriander leaves and ¾ of the fried paneer (save some for kids or to garnish). Cover and keep aside until the rice is ready.
On a high heat, bring water to a rapid boil along with salt, oil & lemon juice.
Drain the water from the soaked rice and add it to the pot of boiling water. Cook on a high heat ensuring the water does not over flow.
Cook until the rice is just 95% cooked, meaning al dente. Drain it to a colander & shake off gently to get rid of the excess water.
Make sure the paneer gravy and the rice both are hot and not warm or cold before you layer the biryani. If the gravy is cold, heat it until hot and turn off. Also make sure the gravy is slightly runny else it will burn.
Layer the rice over the gravy & pour saffron milk all over evenly.
Sprinkle rest of the mint leaves, coriander leaves, ghee, fried paneer, cashews and raisins.
Seal the pot with a foil or moist cloth so the steam does not escape. Cover with a heavy lid. Cook this for 2 to 3 mins on a medium heat until the pot is hot, while you heat a griddle or tawa on another burner on a high heat.
After 2 to 3 mins, place your pot over the griddle and reduce the heat to low. Dum/steam cook this way for 15 to 18 mins. Turn off and rest for another 20mins.
Serve Paneer Biryani in layers such that each serving gets a portion of the bottom layer paneer masala, the middle layer basmati rice and top the layer garnishes. Papads, raita, veggie salad or salan goes well with this. Even plain yogurt will do.