Soak about 15 to 20 cashews in hot water for about 20 minutes. Grind it to a fine paste.
Heat butter/oil in a pan or kadai over medium heat, add the finely sliced onions, ginger and garlic. Sauté until the onions turn translucent.
Add the chopped tomatoes, cover and cook for about 10 minutes until the tomatoes are mushy.
Cool completely and grind it to a fine paste.
Heat butter/oil in a pan or kadai add the finely chopped onions, salt and saute until the onions turn translucent.
Add all the spice powders, (turmeric powder, kashmiri chilly powder, coriander powder, cumin powder, and garam masala powder).
Add a few tablespoons of water and saute well till the raw smell of the masala disappears.
Add the ground cashew paste and cook well for another 3 minutes.
Add the ground onion and tomato paste and combine everything well.
Add water to the desired consistency and simmer for about 5 minutes with the lid on. It is semi-gravy, so don´t make it too thin as this can affect the taste. Make sure to put the lid on as it splutters a lot at this stage.
Add a tsp of sugar to balance all the flavours.
Add the cubed paneer, combine everything well, cook for another 1 minute and add crushed kasuri methi (dried fenugreek leaves).
Finally, add a blob of butter and chopped coriander leaves. Stir until the butter melts and is well incorporated.
Paneer butter masala is ready to be served. Garnish with a little cream and more fresh coriander leaves if desired.
Serve this delicious paneer butter masala with naan, roti, or steamed rice for a scrumptious meal. Enjoy!