Wash the lentils and soak it in 2 cups of warm water for about half an hour.
If you are using fresh spinach, then you need to blanch it. Put 1 cup of water to boil in a saucepan. Add the spinach to the boiling water and remove it as soon as it begins to wilt. Let it cool for a while in a colander.
When the spinach is cool, liquidize it in a blender using as little water as possible.You should have about 1 cup of spinach puree.
Put the lentils along with the soaking water to cook over medium flame or in a pressure cooker(3 whistles). Add remaining water. Cook till done. If you are using the pressure cooker, then just use the water the lentils are soaked in. When done, you can add the remaining water.
In another saucepan, heat the oil/ghee. Add mustard seeds and cumin seeds.
As soon as the mustard seeds begin to crackle, add the chopped onions.Stir the onions and cook till it turns light brown in colour.
Add the garlic, chilli and ginger paste. Stir fry for 30 seconds.
Add the turmeric powder, coriander powder and mix well. Add the spinach and salt and stir.
Add cooked lentils to the above mixture.
Add any remaining water and coconut milk. Heat the dal or curry till it becomes hot.
Allow it to simmer for 5-10 minutes.
Garnish with fresh coriander just before serving with some rice or Indian flatbread.
Adjust the amount of water according to your preference. I prefer thick dals and not watery ones. Amount of salt and chilli entirely depends on your taste. If you cook the lentils in a saucepan, you may need more water.