Heat the olive oil and butter in a large pot over medium heat.
Add the diced onion and cook for 4 to 5 minutes until the onions soften.
Stir in the minced garlic and cook for 30 seconds until fragrant.
Add the cubed butternut squash, sliced carrots, and diced apple to the pot.
Stir the vegetables and cook for 5 minutes to begin softening them.
Pour in the broth and stir to combine.
Add the cinnamon, nutmeg, cayenne pepper if using, salt, and black pepper.
Bring the mixture to a gentle boil.
Reduce the heat to low and cover the pot.
Simmer for 20 to 25 minutes until the squash and carrots are completely tender.
Turn off the heat.
Use an immersion blender to blend the soup until smooth, or carefully transfer it to a blender in batches and blend until creamy.
Return the blended soup to the pot if using a stand blender.
Stir in the maple syrup.
Stir in the heavy cream if you want a richer texture.
Taste the soup and adjust the salt or seasoning as needed.
Warm the soup over low heat for 2 minutes.
Serve hot with optional toppings like pumpkin seeds, parsley, or a swirl of cream.