Punjabi Dal Makhni

This is one of the most iconic dals from the Punjab region. It is rich and decadent, often served at many of the posh Indian restaurants in New Delhi. It is best eaten with a paratha or a pilaf. The addition of a small amount of red beans (rajma) is a quirky traditional detail that makes this dal even more interesting. 

makes 4 cups


1 cup whole black urad lentils

1 Tbsp rajma (red beans)

1 tsp turmeric

2 Tbsp ginger purée 

1 tsp black pepper

4 cups of water

½ cup heavy cream 

1 tsp chili powder 

1 tsp ground fennel

1 ½ tsp salt 

1 tsp ground cinnamon 

2 Tbsp butter or ghee 

2 Tbsp ghee

1 tsp cumin seeds

pinch asafoetida

1 cup cherry tomatoes, sliced in half

2 Tbsp cilantro

juice from ½ lemon


  1. Soak the lentils & rajma in enough water to generously cover for 1 hr or overnight in the refrigerator. Drain. 
  2. Bring lentils, rajma, turmeric, ginger purée & black pepper with 3 cups of water to a boil. Within a few minutes, a scum may rise to the top - this is the debris from the lentils that needs to be discarded. Using a slotted spoon, remove the scum then lower the heat, cover and simmer for at least an hour or until the beans and lentils are tender. Keep adding more water one cup at at time as needed.
  3. Add heavy cream, chili powder, fennel, salt, cinnamon, butter and stir to combine. The lentils should not be dry, but submerged in the liquid. The dal needs to be soft, creamy and fairly thick. If not, continue cooking until it is. 
  4. Heat up the ghee in a separate pan & pop the cumin seeds. Add the asafoetida & cherry tomatoes. Pour into the lentils & stir. Put the cover back on & take the stockpot off the heat. Let it rest for 10-15 minutes to thicken up.
  5. Stir in cilantro & squeeze lemon juice just before serving. Option to drizzle more butter or ghee on top for a decadent finish.

ideas / variations

  • Use coconut or almond milk instead of cream for a vegan option. And olive or coconut oil instead of ghee. For an added unique flavor, stir in 2-3 tablespoons of almond butter at the end. 
  • For a heartier option, use a meat stock to cook the dal with instead of water.