Heat the olive oil in a large pot over medium heat. Add the diced onion and cook for 3 minutes until it softens.
Stir in the minced garlic and cook for 1 minute more.
Add the cubed butternut squash and chopped apples to the pot. Sprinkle in the cinnamon, nutmeg, salt, and pepper. Stir to coat the vegetables.
Pour in the vegetable broth and bring the mixture to a boil.
Reduce the heat to low, cover the pot, and simmer for 20 minutes until the squash is tender.
Remove the pot from the heat. Use an immersion blender to puree the soup until smooth. Taste and adjust salt or pepper if needed.