In a large pot or Dutch oven, heat the olive oil or coconut oil over medium heat. Once hot, add the finely chopped onion. Sauté for about 5 minutes until the onion is soft and translucent.
Stir in the grated ginger and crushed garlic. Cook for an additional 1-2 minutes until fragrant, stirring frequently to avoid burning.
Add the ground coriander, Garam Masala, turmeric, bay leaves, cloves, star anise, and cardamom pods to the pot. Stir well to coat the onions, garlic, and ginger with the spices. Cook for another minute to toast the spices lightly.
Add the red lentils and diced tomatoes to the pot. Mix everything together, ensuring the lentils are well combined with the aromatic mixture.
Pour in the coconut milk and vegetable stock. Stir to combine and bring the mixture to a gentle boil.
Once boiling, reduce the heat to low and let the curry simmer uncovered for about 20-25 minutes, or until the lentils are tender and have absorbed most of the liquid. Stir occasionally to prevent sticking.
Remove the bay leaves, cloves, star anise, and cardamom pods before serving. Taste and adjust seasoning with salt and pepper as needed. Serve the curry hot with rice, quinoa, or naan!