In a large pot, heat the olive oil over medium heat. Add the chopped onion and sauté for about 5 minutes until it becomes soft and translucent.
Stir in the minced garlic and cook for an additional minute until fragrant.
Add the cubed butternut squash and sweet potatoes to the pot, stirring to combine with the onion and garlic.
Sprinkle in the ground cumin, smoked paprika, and cayenne pepper, mixing well until the vegetables are coated with spices.
Pour in the vegetable broth, bring to a boil, then reduce the heat to a simmer. Cover and cook for about 20-25 minutes, or until the butternut squash and sweet potatoes are tender.
Once the vegetables are tender, use an immersion blender to puree the soup until smooth. (Alternatively, transfer the soup in batches to a blender).
Stir in the coconut milk, and season with salt and pepper to taste. Heat the soup over low heat just until warmed through.
Serve hot, garnished with fresh cilantro and a lime wedge on the side for an extra zing.
Notes
Adjust the cayenne pepper to your spice preference. Serve with lime wedges for added flavor.