Cut butternut squash in half lengthwise and place it on a baking sheet lined with parchment paper. Roast it for about 40 minutes to 1 hour at 400°F (200°C) or until fork-tender. When the squash is soft, I like to turn on the fan setting (or you can place it under the broiler) and bake it until is nicely browned and caramelized. The baking time will depend on how large the pieces of squash are. If you cut your squash into smaller chunks, it will bake quicker (about 20 minutes).
While the squash is baking, dice your onion and finely chop ginger and garlic.
Heat the oil in a large pot over medium-low heat. Add the onion and cook for 5 minutes or until soft and translucent. Add the ginger and garlic, cook for 30 seconds, stirring from time to time. Take the pot off the heat.
When the butternut squash is done, scoop out the seeds using a spoon and discard them. Scoop out the flesh and add it to the pot. You can discard the skin.
Add the coconut milk, broth, cinnamon, and cayenne. Bring to a boil and simmer over low heat for about 15 minutes.
Puree the soup in a blender until smooth (you can use a stand blender or a hand/immersion blender).
Season the soup with salt, pepper, maple syrup, and lime juice.
Enjoy!