In a large pot over medium heat saute your shallots for about 2 minutes
add 1/2 of your salt to sweat out the juices in the shallots
Now add your garlic and cook for another 2 minutes
Next, add your chicken stock and stir well
Now add your canned tomatoes, basil, oregano and the rest of your salt and your pepper and mix well
Let simmer for about 15 minutes
Now, carefully take a potato masher and mash done the large chinks of tomato. You can also do this with the back of a spoon
Do this until most of the tomatoes has been crushed up and there are no more large tomatoes left.
Remove your basil from the pot and discard.
Now, take half of your soup mixture and add it to a blender and secure the lid tightly. Take a kitchen towel and place over the lid of your blender. Pulse on medium speed to puree the mixture. Note: Make sure you do not fill the blender to the top because hot liquids expand when you start the blender. You may need to do this in 2 batches. Now add your pureed mixture back into the pot and mix it in with the soup that wasn't pureed. This will give you a creamy soup with some texture. Note: If you like fully creamy soup, just puree all of your soup in batches in the blender
Now add your heavy cream and mix well.
Taste for seasoning and add any salt or pepper that you need.
Serve immediately with grilled cheese, homemade croutons or crusty bread. Garnish with fresh basil