Note: soup may be pureed or not, but if you do plan on doing so, the carrots don’t need to be peeled and all the vegetables may be roughly chunked. The garlic doesn’t need to be minced and the ginger may be just sliced.
In a Dutch oven, heat several tablespoons of the congealed coconut milk from the top of the can. Add onions, and cook until onions have softened, stirring now and then about eight minutes. Add curry paste and cook, stirring until fragrant, about one minute. Add garlic and ginger and stir in.
Add 4 cups water or broth, sweet potatoes, carrots, and lentils. Bring to a boil and reduce heat to a simmer, partially covered, until lentils and vegetables are tender about 20 to 25 minutes. The soup will be very thick towards the end of cooking time – make sure to check it and stir if necessary to prevent scorching.
Stir in coconut milk, fish sauce, and lime. Add additional stock or water to bring the soup to your preferred thickness. If desired, puree soup in batches until velvety and smooth. Taste and adjust seasonings.
Serve warm or cold with lime, or other suggested garnishes. Soup will thicken upon standing, and thicken more if refrigerated, so add a little water if reheating.