Start the Instant Pot on saute mode and once hot add the butter (or oil). Stir in the whole spices bay leaf, black and green cardamom along with cumin seeds and asafoetida (hing).
Once the the seeds splutter, add the onions and some salt and saute until onions are golden brown.
Stir in the ginger garlic and saute until the raw garlic smell goes away.
Add in the tomato puree, cook for 2 mins then add the spices red chilli powder, coriander powder, garam masala, salt and pepper. Mix well.
Drain the water off the soaked dal and add them to the pot along with 3 cups of water, give it a good mix.
Close the Instant Pot lid with vent to sealing position and pressure cook on manual or bean chilli mode for 30 mins followed by natural release.
Open the lid, crush the kasuri methi (dry fenugreek leaves) between your palms and add that along with 1 cup water and mix. At this point the dal is cooked but it needs to be simmered or slow cooked to get that creamy and unique dal Makhni flavor and texture.
Start instant pot back on saute (low) and bring the dal to a simmer. Keep stirring intermittently and mashing the dal with back of the spoon a few times. As the dal simmers it gets thicker too so adjust the consistency by adding ¼ cup of water at a time as needed while simmering.
After 15 mins, add in the dollop of butter (optional), cream and mix well. The dal will get lighter in color after adding cream.
Simmer for another 15-20 mins stirring intermittently and you will notice the dal getting darker again and creamier.
Our delicious Dal Makhani is ready to be served. Serve it topped with some more butter, drizzle of cream, some cilantro and ginger slices (optional) with side of rice or roti/naan and some salad and chutney.
Optional - Follow the steps for Dungar Method below to get that restaurant style dal Makhani with smoky flavor.