Line baking sheet with aluminum foil or parchment paper.
Lightly sprinkle with kosher salt and ground black pepper. Place squash, cut-side-down, onto baking sheet. Roast in oven for 45-50 minutes, or until flesh is tender and easily pierced. Remove from oven and allow to cool.
Once cool, remove flesh from skin by using a spoon and scooping out the flesh. Discard skin and set flesh aside.
In a large deep pot, heat olive oil over medium-high heat until hot. Add carrots, apple, shallot and onions and saute until tender, about 6-8 minutes. Once tender, add ginger, sage, cayenne, allspice, squash flesh and vegetable stock. Stir well and bring to a boil. Reduce heat and simmer for 15-20 minutes.
Remove pot from heat and puree mixture, either with an immersion blender (best thing ever), a blender (in batches) or a food processor.
Once pureed, season with any additional salt or pepper to taste. Garnish with thinly sliced red onion or apples, if desired.