Over a medium low heat, warm the oil in a large pan (I use the largest saucepan I own, a deep, 9" diameter pan). Add the diced onion and gently cook for a few minutes until it starts to soften and turn translucent (it doesn't need to brown). Add the carrot and garlic then cook for another 8-10 minutes, stirring occasionally so it doesn't catch.
Sprinkle in the seasonings (garam masala, cumin, smoked paprika, worcester sauce and hot sauce) and stir.
Add the diced, roasted peppers, chopped tomatoes and stock, cover and simmer for 35-45 mins, or until the vegetables are soft and completely cooked through.
Puree the soup in batches. Return to the pan and check seasoning & spiciness - adjust if necessary.
If you want a thinner consistency, add a little more stock. If you want to make a 'cream of' soup, add a little cream as you re-heat before serving.
Serve with lightly toasted french bread slices, spread with pesto and sprinkled with shredded cheese then placed under the grill until melted and bubbling.