Fill a medium pot halfway with water (~8-9 cups) and cover to bring to a boil. Once it comes to a boil, drain the chana dal and add to the boiling water along with the salt. Allow to come to a boil again, using a slotted spoon to remove any scum that rises to the surface. Cover with the lid ajar to prevent it from overflowing.
Reduce the heat to medium and boil for 35 minutes, or until the dal is cooked fully but holds shape (it should break easily, without resistance, when pressed between your fingers). Drain and set aside.
Heat oil in a large pan over medium-high heat. Once hot, add the cumin seeds and onions. Sauté, stirring often, until golden brown, about 5 minutes. Deglaze the pan with 2 tbsp of water.
Add the garlic and ginger and cook for another 2 minutes, until aromatic. The onions will have deepened in color. Deglaze again if it starts to stick to the pan.
Reduce the heat to low, add the ground spice powders (coriander, red chili, turmeric, cumin), and salt. Stir for 1 minute to bloom the spices.
Add the puréed tomato and increase the heat to medium-high. Cook for 3 minutes, until the tomatoes have reduced and the oil starts to release. Add the drained chana dal and stir-fry it with the masala for a minute. Pour in the measured water and bring the dal to a simmer.
Reduce the heat to medium. Allow the dal to simmer, covered with the lid ajar, for 8-10 minutes to develop flavor. For a creamier texture, use a wooden spoon to mash the dal along the edges. Reduce the heat to low so that it gently simmers while you prepare the Tarka.
Heat oil and butter/ghee in a small frying pan over medium heat. Once hot, add the green chili peppers and dried red chili peppers and sizzle for 15 seconds. Do not allow them to darken. Sprinkle in the ginger and cilantro and allow the leaves to wilt slightly. Pour this tarka all over the simmering dal. Continue to simmer on low heat for 2 minutes, until no longer watery but still moist. The oil will rise to the surface.
Turn off the heat and sprinkle in lemon juice and garam masala. Serve hot with roti, naan, paratha, or rice.
