Heat the oil in a large casserole dish over medium-high heat until hot. Add onion, carrot and garlic; saute 5 minutes. Stir in stock, sugar, sweetcorn, beans, tomatoes and chillies; bring to the boil. Cover, reduce heat, and simmer 2 hours.
This soup can also be prepared in a slow cooker. Combine everything in the pot, and cook on HIGH for the first hour. Turn the temperature down to LOW, and cook 7 more hours.