Wash and soak the sabut urad dal and the rajma in enough water for atleast 6-8 hours or overnight.
Discard the water and transfer the soaked dal to a pressure cooker along with garlic, black cardamom and red chili powder.
Add enough water and pressure cook the dal on a medium flame for 5 whistles or until the dal is completely cooked.
Let the pressure release naturally. Open the cooker and mash some of the dal with the back of the ladle or using a masher.
Add oil or ghee along with 2 tbsp butter to a kadai on medium flame
Add the bay leaves and the cumin seeds. Let it splutter.
Add the ginger-garlic-green chili paste and the slit green chilies and saute until raw smell disappears.
Add the chopped onion and saute until they turn translucent.
Add the ginger and the tomato puree along with a pinch of salt. Cook until oil separates.
Add all the spice powders (kashmiri chili powder, coriander powder, cumin powder and garam masala). Mix and cook the masala well. Add the mashed dal to the kadai.
Add 2 cup water and mix until well combined. Let it come to a boil.
When the curry boils, add the crushed kasuri methi.
Add the cream and mix.
Add chopped coriander leaves and let it simmer for 45 minutes on low heat.
To get the smokey flavor, the dungar method can be done. Serve dal makhani hot with naan, phulkas or jeera rice.