Heat oven to 375°F. Halve butternut squash and scoop out the seeded cavity with a spoon. Use a fork to poke holes in the open face of the squash. Slather with 2 tbsp coconut oil - leave a small pool of oil where the seeds used to be. Line a rimmed baking sheet with foil or parchment and place squash face side up on baking sheet. Depending on the size of the squash, let it roast for 1 hour to 1 hour 20 mins. About 45 mins in, I like to take it out and brush the pooled coconut oil over the whole face of the squash. It’s done when you can easily stick a fork in the flesh. Remove from the oven and let it cool.
While waiting for the squash to cool, heat 2 tablespoons coconut oil over med-high heat in a 6-quart pot. Saute the onion, shallot, carrots, spices, salt, and pepper; saute 6-8 minutes until tender. You can test this with a fork. The carrots may take a bit longer than the onions and it's going to smell REALLY good.
Once cooled enough to handle, scoop the butternut squash out of its skin and add it to the carrot and onion mixture. Cook for another 5 minutes, stirring occasionally, before adding the stock. Add the stock, bring to a boil, and then reduce heat to simmer for 10 minutes to integrate all those lovely spices.
Carefully transfer the soup to a heat-safe blender or food processor to puree the soup, or use a hand blender to blend the soup right in the pot. Puree the soup until completely smooth and then pour it back into the pot.
Stir in the cream and taste. Season with any additional salt, pepper or spice adjustments you may want--sometimes I add more curry powder or chili powder for a kick.
Ladle into bowls and garnish with an extra swirl of cream and sliced almonds.
Use coconut oil, coconut cream, and vegetable stock to make this recipe vegan or dairy free, and its just as delicious.