Preheat the oven to 450°F. Spread the carrots out in a single layer on a rimmed baking sheet and drizzle with oil; toss to coat well and roast for 20 minutes, until soft and starting to turn golden on the edges.
In a medium pot, heat a drizzle of oil with the butter over medium heat. When the foam subsides, add the onion and ginger and cook for 5 minutes, until the onions are soft. Add the curry powder, roasted carrots (scraping any flavourful browned bits from the pan), stock and orange juice and bring to a simmer. Cook for 15-20 minutes, until the vegetables are soft. Season with salt and pepper.
Remove from the heat and using a hand-held immersion blender, puree the soup right in the pot. (Alternatively, process it in a blender in batches until smooth.) Stir in the cream, if you’re using it, and serve hot.