In a large saucepan, heat the coconut oil over medium-high heat. Add the onion and sauté for a couple of minutes, stirring with a wooden spoon.
Add the garlic and ginger, and continue cooking until the onion is soft and translucent.
Stir in the spices and cook until fragrant, then add the carrots. Toss to coat the carrots in the spice and onion mixture.
Add the lentils and pour in the water. Stir well, scraping up any spices stuck to the bottom of the pan.
Bring the soup to a boil, then reduce to a gentle simmer and cook for 15–20 minutes, or until the carrots are soft.
Remove from the heat and allow the soup to cool slightly for about 10 minutes.
Blend until smooth and creamy using a blender (in batches if necessary) or a stick blender. If the soup is too thick, add a little extra water to help it blend.
Return the blended soup to the saucepan over low heat. Stir through the coconut milk and season with salt and pepper to taste.
Once hot, ladle into bowls and serve as is or alongside toasted bread.
