Heat the olive oil in a heavy pot over medium heat. Add the garlic and onions and stir to coat. Add the carrots and cook until starting to soften, about 3 minutes. Sprinkle in a little salt. Add the squash and cook, stirring, until soft and tender, a few minutes. Add more salt to taste and the curry powder. Pour in the wine if using. Let the wine evaporate for about 30 seconds, then pour in the chicken broth. Bring to a boil, reduce the heat to a simmer, cover the pot and cook for 1 hour.
After 1 hour, taste and adjust the seasoning. Remove from the heat.
Puree the soup using an immersion blender, or in batches in a regular blender. Return the soup to a simmer and serve hot. If you're feeling naughty, drizzle heavy cream over the top.
When blending hot liquid, first let it cool for five minutes or so, then transfer it to a blender, filling only halfway. Put the lid on, leaving one corner open. Cover the lid with a kitchen towel to catch splatters, and pulse until smooth.