Rinse lentils. Bring water to a boil and add lentils. Immediately add tumeric and coriander. Stir, turn heat to low, and simmer for 18-20 minutes uncovered.
Over medium heat, melt butter. Add cumin and cardamom. Stir briefly, then add onion and garlic. Fry until onion starts to brown, about 6 minutes.
Add chili powder and boiled lentils (do not drain much). Keep frying for another few minutes so lentils absorb flavors. Sprinkle garam masala and stir. Serve.