In a food processor blend together the onion, ginger and garlic. Set aside.
In a large pot heat oil over medium. Add cinnamon stick, bay leaf, cumin seeds and asafoetida. Stir for 10 seconds or until the spices are fragrant.
Add pureed onion, ginger and garlic mixture along with the salt. Lower heat slightly and cook, stirring constantly, until the mixture begins to change colour. This may take about 10 minutes.
Add turmeric, coriander and hot chili powder. You can adjust these spices to your taste. Stir fry for 2-3 minutes or until these spices are well toasted. Add crushed tomatoes and cook for several minutes, stirring constantly until you see the mixture start to form into a ball. You may also see the oil separating from the spices.
Add lentils and water. Depending on how soupy you like your dal, you may need to add more water. Cover and bring to a boil, then lower the heat and cook about 30 minutes or until the lentils are falling apart.
Adjust consistency by adding more water or allowing to cook further without the lid for a thicker dal. Add garam masala, fenugreek leaves and additional salt to taste. Cook another 5 minutes, then add fresh cilantro. Serve with a dollop of yogurt and a side of rice.
Notes
You can use other lentils for this versatile dal. Some varieties may require soaking, in which case cooking ahead of time is necessary.