Rinse or wipe dry the mushrooms. Slice off a part of the base stalk. Then slice or chop them. Set aside.
In a grinder or blender, take the chopped onions, ginger and garlic. Grind to a smooth paste without adding any water.
Remove this paste with a spoon or spatula in a bowl and set aside.
In the same jar, add the chopped tomatoes and make a smooth puree. No need to blanch tomatoes before pureeing. Set the tomato puree aside.
In a small bowl, whisk curd (yogurt) until smooth and set aside.
Sautéing onion and tomato paste
Heat oil in a pan and add the following whole spices - cumin seeds, tejpatta, cinnamon, black cardamom, green cardamoms, cloves and a single strand of mace.
Fry the spices for a few seconds until they become aromatic and splutter.
Lower the heat and add the ground onion-ginger-garlic paste.
Mix the paste with the oil. If the paste splutters then cover the pan with a lid allowing for some space for the steam to pass.
On a low to medium heat stirring often continue to sauté until the onion paste starts thickening.
Stir and sauté until the paste becomes golden. This sautéing of onion paste takes some time. So to quicken the process add a pinch of salt.
Now add the tomato puree. Stir. Then add the spice powders - turmeric powder, red chilli powder and coriander powder.
Mix well and sauté until you see oil releasing from the sides of the masala.
Making mushroom masala
Add the sliced or chopped white button mushrooms.
Add the beaten curd (yogurt). As soon as you add yogurt, mix thoroughly and quickly.
Simmer on a low to medium flame for 2 to 3 minutes.
Then add water.
Season with salt. Mix very well.
Cover the pan with a lid. On a low to medium heat simmer the mushroom masala for 18 to 20 minutes or until the mushrooms are tender.
Lastly add dried fenugreek leaves (crushed), garam masala powder and chopped coriander leaves. Mix again. At this step you can add 1 to 2 tablespoons of heavy cream for a rich tasting curry.
Serve mushroom masala hot or warm.
Instant Pot Method
Use the sauté function of your IP at normal mode. Add the oil in the steel insert and let it get hot.
Add the whole spices and let them splutter.Add onion paste and sauté stirring non-stop until the onion paste turns golden.
Add the tomato puree, ground spices and combine well. Sauté until the masala paste becomes glossy, thickens and you see oil releasing from the sides.
Add in the chopped mushrooms and sauté for 2 to 3 minutes. Press the cancel button.
Add the curd (yogurt). Mix thoroughly and quickly.
Add ⅓ cup water and salt. Mix and deglaze.
Pressure cook on high for 3 minutes.
Then do a quick pressure release after 3 minutes.
Sprinkle dried fenugreek leaves, garam masala powder and coriander leaves. Mix and serve hot.
While serving you can garnish mushroom curry with some coriander leaves.
Serve Mushroom masala with steamed rice, jeera rice or pulao. This mushroom curry also goes very well as a side gravy dish with biryani. You can also have mushroom masala with roti, paratha, naan, bread or dinner rolls.
The leftovers can be refrigerated for 1 to 2 days. Warm the mushroom masala gravy in a pan before serving. If the gravy has thickened too much, then add a few tablespoons of water to thin the consistency.
Mushrooms: If you do not have Button Mushrooms then cremini mushrooms and shiitake mushrooms make a good substitute.
Veggies: You can add cauliflower, carrots, green peas, broccoli and bell pepper. Add ½ to 1 cup of any one vegetable.
Vegan option: Add almond yogurt or any nut yogurt. You can even skip adding yogurt.
Tomatoes: Replace ½ cup of canned chopped/crushed tomatoes with fresh tomatoes.