In a large pot, heat the oil over medium heat. Add the onion, carrot and celery and cook for 4-5 minutes or until softened.
Add the butternut squash, apple and broth. Bring mixture to a boil over high heat.
Reduce heat to low and simmer for about 30 minutes until the squash and carrots have softened.
Remove from heat. Use an immersion blender to purée the soup, or purée the soup in batches in a traditional blender.
Stir in cinnamon, nutmeg, and cayenne. Season with salt and pepper to taste.
Serve warm, garnished with roasted butternut squash seeds, if using.
To store, let any leftover soup cool to room temperature before transferring it to an air-tight storage container. The soup may be stored in the fridge for up to 5 days. Alternatively, the soup can be stored in the freezer for up to 3 months.