Wrap tofu in paper towels and place a heavy pot on top to help remove excess water. Keep for 5 minutes. Cut tofu into 1 inch cubes.
Add salt, chili powder, turmeric, garam masala, ginger, and garlic paste and toss gently to coat the tofu with spices. Marinate for 15 minutes.
Curry
Soak cashews in warm water for 15 minutes. Blend the soaked cashews to make a smooth paste and reserve.
In a medium pan add oil and onions and saute for 8 to 10 minutes on medium heat. Cover to speed up the cooking process. Once the onions are translucent and lightly browned add ginger and garlic and saute for another minute.
Add tomato puree, salt, chili powder, turmeric, and garam masala. Mix well and cook on medium-low heat for 5 minutes as the oil starts to separate from the sides. Add tomato paste and water. Mix well and cook covered for 10 minutes on low heat. Add sugar, cashew cream, and kasoori methi.
Heat oil in a non-stick frying pan and add ghee or oil. Line the marinated tofu, adding any excess marinade on top. Cook on medium heat for 3 to 5 minutes and then gently flip over the tofu pieces using a flat spatula. Cook for an additional 3 to 5 minutes as the tofu starts to lightly brown.
Add fried tofu to the sauce. Stir gently and cook for 2 to 3 minutes or until the sauce comes to a gentle simmer.
Garnish with cilantro and serve hot.
Notes
Store-bought tomato puree adds a nice deep orange color to the dish. I highly recommend Pomi products that are available in most grocery stores in the US.
Homemade garam masala adds so much depth and authentic flavor. If you haven't already, do try my EASY garam masala recipe.
Try my freezer-friendly ginger paste and garlic paste that work for so many recipes on the blog.
If you want to make this recipe in the pressure cooker, make sure to only pressure cook the sauce similar to my Paneer Butter Masala recipe. Do not pressure cook the tofu as it will fall apart.