Heat oil in a large stockpot over medium high heat. Add onion, carrots, celery, and garlic. Reduce heat to medium and sauté for ten minutes or until vegetables become tender.
Add tomatoes and sauté for five minutes.
Add the chicken or vegetable stock, tomato juice, tomato paste and white wine or vermouth. Bring to a boil. Cover, reduce heat to a simmer, and cook for 30 minutes.
Stir in sugar, basil leaves, vinegar, and cayenne pepper. Puree the soup using an immersion blender or allow the soup to cool slightly and then process in small batches in a blender until smooth.
Return the soup to the pot. Add the corn kernels and bring to a boil over medium high heat. Continue to cook for 5-7 minutes.
Remove pot from heat and stir in heavy cream. Season with salt and pepper.