Heat coconut oil in a dutch oven or large stock pot over medium-low heat. Add onion to pot and cook until translucent (5-7 minutes).
Add in the butternut squash, sweet potato, apple, vegetable broth, cinnamon, curry powder, ginger, and nutmeg. Gently stir.
Turn up the heat to medium-high, cover, and cook for 20-25 minutes or until veggies are fork-tender. Turn off heat.
Using an immersion blender, begin to pureé the soup, adding in the coconut milk and sea salt after a few minutes. (be patient as it will take 5-8 minutes to get your soup silky smooth depending on the strength of your immersion blender).
Top as desired and serve warm.
Store leftovers in refrigerator.