Heat 2 tbsps oil, ghee, olive oil, or butter in a large pan, or dutch oven over medium flame.
When hot, add 1/2 tsp cumin seeds and let them splatter.
Add the chopped onions and saute until they being to turn slightly brown.
Add ginger garlic paste and turmeric powder. Saute till the raw aroma of ginger garlic goes away.
Then add 1 medium sized chopped tomato. Stir and saute the tomatoes until they turn soft and mushy.
Once you see fat releasing from the sides of the onion-tomato masala, add salt. Mix very well.
Now add 1/4th cup of water and saute until the moisture reduces and the fat separates at the sides of the pan.
Add the spinach puree to the pan and mix well. Saute by stirring frequently until the water reduces and small droplets of oil begin to appear on top of the spinach puree.
Add about 1/2 cup of hot water. Give a good mix.
Add paneer cubes to the palak gravy and gently mix.
Then add 1/4 tsp of garam masala and 1 tsp of crushed dry fenugreek leaves. Mix.
Lastly, add 1 tbsp butter and 2-3 tbsps cream. Mix well so that the cream gets uniformly incorporated into the spinach gravy.
Palak Paneer Restaurant style is ready. Serve hot with your choice of flatbread or any rice variety. Transfer it to a serving bowl and top it up with some butter and drizzle cream.