Heat oil in a large pot over medium heat. Add diced onion and cook 3–4 minutes until soft.
Stir in garlic and ginger. Cook for 1 minute until fragrant.
Add cumin, coriander, turmeric, garam masala, and chili powder. Cook for about 30 seconds to release flavor
Stir in rinsed lentils, coconut milk, and vegetable broth. Mix well.
Bring to a boil, then reduce heat to low. Simmer uncovered for 20–25 minutes, stirring occasionally to prevent sticking.
The curry should be thick and creamy. Add extra broth or water if needed.
Stir in lemon juice and salt to taste.
Top with fresh cilantro and serve hot.