In a large pot or Dutch oven, heat the vegetable oil over medium heat. Add the onion and cook until softened, about 5 minutes.
Add the garlic and ginger, and cook for 1-2 minutes, until fragrant.
Stir in the diced tomato, curry powder, turmeric, ground cumin, ground coriander, paprika, cayenne pepper (if using), and salt. Cook for 3-4 minutes, allowing the spices to become fragrant and the tomato to soften.
Add the rinsed and drained lentils, vegetable broth, and coconut milk to the pot. Stir well to combine.
Bring the mixture to a boil, then reduce the heat to low and simmer, covered, for 25-30 minutes or until the lentils are tender.
If desired, use an immersion blender or a regular blender to partially blend the curry, leaving some texture. This step is optional but can create a creamier consistency.
Serve the Lentil Curry over cooked rice or with naan bread, garnished with fresh cilantro.