Heat oil in a medium saucepan over medium heat. Add ginger, garlic, shallot, and carrots and cook, stirring often, until softened, about 7 minutes. Add curry powder and cook, stirring, until fragrant, about 1 minute.
Add 1 1/4 teaspoons salt, 1/2 cup coconut milk, 4 cups water, and the lentils, and bring to a boil. Reduce heat, cover, and simmer until lentils and carrots are tender, 8 to 10 minutes. Pour 2 cups soup through a fine sieve into a bowl, reserving solids. Puree strained liquid with remaining soup in a blender until smooth. Reheat after blending. Stir in reserved solids.
Reserving some for garnish, stir cherries and cilantro stems into soup, and ladle into bowls. Swirl in remaining 1/4 cup coconut milk, and garnish with cherries and cilantro leaves.
Absolutely delicious!! I am always a little hesitant about soup recipes that call for water as opposed to broth, but this is spot on. It is loaded with flavor with ginger, garlic and shallot. DO NOT substitute brown lentils, you'll not get the glow of the presentation. Craisins are a fine substitute for the dried cherries. All the garnishes blend beautifully both in flavor and presentation. A wonderful addition to your soup library!!