The secret to this simple recipe is using the best carrots you can find; taste them to make sure they are sweet and full of flavor. You can also use peeled baby carrots to save time, but the taste will not be quite as flavorful.
Cook shallots, bay leaf, ginger, curry powder, and thyme in butter in a 2- to 3-quart heavy saucepan over moderately low heat, stirring occasionally, until shallots are softened and pale golden, 6 to 8 minutes. Add a little of the broth if needed to prevent sticking.
Meanwhile, peel potato and apple, and cut into 1-inch cubes.
Add potatoe and apple to shallot mixture along with carrots, broth, water, salt, and pepper to bring to a boil. Reduce heat and simmer, covered, until carrots are tender, 20 to 25 minutes.
Meanwhile, toast the almonds slightly either in the oven or a frying pan over medium heat.
Discard bay leaf. Using blender, food processor, or hand blender, puree until smooth. Serve soup sprinkled with almonds.