Clean, wash and soak the whole urad and rajma overnight.
Drain, add 2 cups of water and salt and cook on low heat till overcooked or alternatively pressure cook till done. Allow the steam to escape before opening the lid.
Mash the dal well and keep aside.
For the tempering, heat the butter in a deep pan and add the cumin seeds.
When the cumin seeds crackle, add the green chilies, cinnamon, cloves, cardamoms, and onions and sauté till the onions turn golden brown.
Add the ginger-garlic paste,chili powder, turmeric powder and tomato puree and cook till the mixture leaves oil.
Add the dal, salt and little water if required and simmer for 10 to 15 minutes.
Add the cream and mix well. Cook on low heat for further 2 to 3 more minutes.
Burn the charcoal on fire.
Place a foil on the dal makhani, keep the burning coal, pour few drops of oil.
Place the lid tightly to allow the smoke to incorporate in the dal makhani.
Serve the dal makhani garnished with fresh cream.