Wash and soak the whole urid dal and the rajma in water overnight. In the morning drain the soaked water and add 4 cups of fresh water and pressure cook the dals with salt and turmeric powder. Keep the flame and allow the first whistle, then make the flame low and allow 5 more whistles. Slow cooking of the dals make it cook nicely.
Drain the water from the cooked dal and keep it aside as we are going to use it later. Do not discard the water. The cooked water not only gives the texture but also flavour to the dish.
Heat 2 tablespoon of butter and add the bay leaf, cinnamon stick, cloves, cardamom and chopped ginger and saute them for a minute. Then add onions along with a pinch of salt and cook till the onions are translucent.
I have already made puree out of the tomatoes and kept ready. So now, I am going to add the tomato puree to the pan. Keep the flame medium and cook the tomato puree for atleast 10 minutes. After 10 minutes when the tomato puree gets cooked and nicely blended with the spices add the strained dal water to the pan and add red chilli powder and mix well and again cook everything in low flame for another 5 minutes. The strained water adds the texture and flavour to the dish.
Meanwhile, take 2 tablespoon of the cooked dal in a mixer and grind it to a nice paste. This is the trick we need to use. This paste brings a thick consistency to the gravy and also gives a nice texture.
Add the ground dal paste to the dal mixture in the pan and mix well. Now, add the remaining butter and again cook the dal in low flame.
Then its time to add the kasoori methi. Crush the kasoori methi between your palms and add it to the pan and mix well. Finally add the cooked urid dal and the rajma and mix well. Adjust the salt if needed.
Cover the pan and cook the dal in low flame for another 20 minutes. Add fresh cream and stir well. Keep in flame for another couple of minutes. Finally garnish with chopped coriander leaves and remove from flame.
Just before serving again add little cream and serve hot!. The delicious Dal Makhani is now ready to serve with any Indian breads or Pulao.