Heat the olive oil in a large pot or Dutch oven over medium heat. Add the diced onion and sauté until translucent, about 5 minutes.
Stir in the minced garlic and cook for another 1-2 minutes until fragrant.
Add the diced carrots, parsnips, sweet potato, and butternut squash to the pot. Stir well to combine.
Pour in the vegetable broth and bring the mixture to a boil. Reduce the heat and let it simmer for about 20 minutes, or until the vegetables are tender.
If desired, use a blender or immersion blender to puree the soup until smooth, or leave it chunky for a heartier texture.
Stir in thyme, cinnamon, nutmeg, salt, and pepper to taste. If using, add the chopped kale and simmer for an additional 5 minutes until wilted.
Finish the soup with a splash of apple cider vinegar for brightness and adjust seasoning if necessary.
Serve hot, garnished with fresh parsley if desired.