Rinse and wash lentils and beans with cold water for 1-2 times in a bowl.
Soak them in enough water for at least 4 hours. If not in a rush, you can also leave them overnight. Once soaked, they double in size. Discard water before usage.
In a pot, add oil, once heated add onions,ginger and chillies with little salt.Once cooked for 8-10 minutes,
Add tomato puree/chopped tomatoes. Add the spices once tomatoes are cooked
Add the lentils and beans along with 6 cups water and salt.
Allow it to boil. Once it has come to boil cover it with a lid. Let it boil on a low flame for 60 minutes. If it is not soft, then add little more water and cook for few more.
Add fresh coconut milk,sugar and cook for 10 mins.
Add kasuri methi (dried fenugreek) and turn off the heat.
Drizzle some lemon juice at the end of the cook.Adjust salt as per your taste.
Optionally, if you like lentils extra hot, you may heat oil in a pan and temper red chillies. Add this to dal to make it spicy. Garnish with coriander.
Serve hot with rice or flatbread.