Preheat the oven to 425°F. Line a large baking sheet with parchment paper and set aside.
Cut the butternut squash in half lengthwise and scoop out the seeds.
Drizzle about 1 ½ tablespoons of olive oil over the flesh of the cut butternut squash and season with salt and pepper.
Place the butternut squash cut side down on the prepared baking sheet and bake for 45 minutes to 1 hour, or until fork tender. Remove from the oven and set aside to cool.
Once the squash has cooled enough that you can handle it, carefully peel the skin from the flesh and discard.
Heat the remaining tablespoon of olive oil in a large dutch oven or stockpot over medium heat.
Add the diced onion and diced apple and saute, stirring frequently, until they soften and turn translucent, around 6 to 8 minutes.
Add the minced garlic and cook, stirring frequently, for an additional 1 to 2 minutes, or until the garlic is fragrant.
Stir in the roasted butternut squash, coconut milk, 3 cups chicken broth, sage, thyme and cayenne (if using).
Allow the mixture to come to a simmer over medium heat, then reduce the heat to low, cover and simmer for 15 more minutes, stirring occasionally.
Use an immersion blender to puree the soup to your desired consistency or carefully transfer the soup, in batches, to a heat resistant blender to blend.
If the soup is too thick, add additional broth as needed. Check for seasonings, season with additional salt and pepper if needed.
Serve and enjoy with your favorite toppings.