Preheat oven to 400˚F (200˚C). Line a baking sheet with parchment paper.
In a large bowl, toss together carrots, garlic, 3 Tbsp (45 mL) canola oil, salt, and pepper. Dump onto the prepared baking sheet and arrange in a single layer. Roast for 30 minutes, until carrots are slightly caramelized and tender, stirring occasionally. Remove from oven.
In a large pot or Dutch oven, heat 2 Tbsp (30 mL) of canola oil over medium-high heat. Add the onion and sauté for 5 minutes, until translucent.
Stir in carrots and garlic. Add lentils and stir to coat.
Add stock, cover and bring to a boil. Reduce heat to medium-low and simmer for 15 minutes, stirring occasionally, until lentils are soft.
Remove pot from the heat. Use an immersion blender to purée the soup (or purée in batches in a blender or food processor), then stir in the cream.
If the soup seems too thick, thin it out with more stock or water. Season to taste with salt and pepper.
Chopped fresh herbs, such as dill, parsley, chives, or basil would make great garnish to this soup.