In a bowl, add water to the lentils/daal. Wash and drain. Repeat till water runs clear. Presoak in fresh water (up to 1-2cm over the daal) for 2 hours.
Add the drained daal along with water, tomato, salt, turmeric powder, chilli powder, coriander powder, garam masala and ginger-garlic paste in a pressure cooker. Cook on a high flame till first whistle. After the first whistle, reduce the flame to low and cook for another 5 minutes. Switch off the gas and let the steam release on its own, around 10-15 minutes. Once all the steam is released, open the pressure cooker. Please refer to notes for this step if using a pot or a slow cooker.
Using a tong, remove the skin of the tomato and discard. Mix thoroughly to create a thick and creamy consistency. If required, mash the tomato using the back of the spoon. Most of the daal pieces will retain their shape and remain whole.
Adjust the consistency if required by adding hot boiled water if too thick or cooking some more if watery. Taste and add salt if needed.
For tarka, heat ghee/oil in a small frying pan. Add cumin seeds, asafetida and green chilli. Sizzle for around 8-10 seconds, taking care not to burn the spices. Add the tarka to the daal and stir well.
Add lemon/lime juice and garnish with freshly chopped coriander leaves.
Serve hot with roti/paratha or rice.