Heat the butter and olive oil in a large, heavy-bottomed pot over medium-low heat. Add the onions and carrots and saute for about 8-10 minutes, or until very tender. Once tender, add the garlic and cook until fragrant, about 1 minute.
Add the flour and tomato taste and stir until the colour darkens and it coats all of the vegetables.
Then add in the tomatoes, chicken stock, and sugar and whisk until there are no more lumps and it’s well combined.
Bring the soup to a boil, then lower the heat to medium low, and simmer, uncovered, for about 45 minutes or until all of the vegetables are very tender.
Transfer to a blender and puree until smooth. Strain back into the pot and stir in the milk and cheese. Season with a pinch each of salt and pepper, to taste.