Clean the mushrooms by rubbing them with a dry cloth. Keep the stems but do remove any bruised parts. Add the cleaned mushrooms to a bowl and masage with 2 tsp oil and 1/2 tsp salt and red chilli powder. Let sit near while you make the sauce.
Heat oil on medium heat in a heavy bottom pot. Once oil is hot, add the sliced onions. Cook onions till they brown evenly. Strain the onions from the oil using a slotted spoon.You can take out 3 tbsp of oil from the pot after frying the onions. Reserve the oil and use in 1-2 days in any savory curry you make.
Reserve 1/3 cup of onions and add the rest to a small blender jar along with yogurt, red chilli powder. Blitz to make a smooth paste. Set aside.
To the remaining oil add the whole spices and crackle for 30 seconds. Add the green chillies and caraway seeds next and let crackle. Next, add the ginger garlic paste and cook for a minute or so till you smell a nice aroma.Then add the tomato puree and salt.Â Cook for 3-4 minutes till you see oil seperating on the sides.
Stiring continously, next add the yogurt onion paste and now and cook again on medium heart till oil starts separating.
Add the mushrooms now and saute with the masala for 2-3 minutes. Next add 1/2 cup hot water to the masala, taste and adjust the salt of the masala and bring it to a slow boil. Once boiling, reduce the heat to low, cover and let cook for 8-10 minutes till the mushrooms are tender. Dont cook too much else the mushrroms will shrink and become chewy.
Finish with ghee,kasuri methi and garam masala. Mix gentle and take the pot off the stove. Let rest for 20 minutes before serving.
Serve garnished with reserved fried onions.