Melt butter in a large pot over medium heat. Add onion and carrots, cooking for 5-6 minutes until softened.
Add minced garlic and cook for 1 minute until fragrant.
Stir in cubed butternut squash and chopped apple. Cook for 3-4 minutes, stirring occasionally.
Add vegetable broth, brown sugar, cinnamon, nutmeg, and ginger. Bring to a boil, then reduce heat and simmer for 25-30 minutes until squash is very tender.
Remove from heat and use an immersion blender to puree soup until completely smooth. Alternatively, carefully transfer to a regular blender in batches.
Stir in heavy cream and return to low heat. Season with salt and white pepper to taste.
Serve warm, garnished with toasted pepitas and a drizzle of cream if desired.