To prepare, chop your onion and set aside. Then finely chop the garlic, and set it aside. Open the cans of tomatoes and set aside. Then measure the vegetable stock, and set it aside. Measure out the half-and-half and set it aside. Take the can of whole tomatoes and roughly chop the tomatoes up, this will speed up the processing time
In a large pot over medium heat, add the olive oil. Allow the oil to warm. Once the oil is warm, add the onion and garlic. Stir to combine and season with salt, pepper, and red pepper flakes(if using). Allow them to cook for about 3 minutes or until the onion becomes translucent.
Next, add the tomato paste and stir to combine. Then, add a small amount of the vegetable stock (about ¼ cup). This will help loosen up the tomato paste. Once the tomato paste is mostly incorporated, add the roughly chopped tomatoes and the can of diced tomatoes. Stir to combine.
Add the remaining vegetable stock, cover, and let the soup come to a boil (about 3 minutes). Once boiling, reduce the heat to low and allow it to simmer for about 10 minutes
Once done simmering, add the half and half, then take a small taste to determine the seasoning. Season with salt, pepper, and red pepper flakes if necessary.
Using an immersion blender (hand stick blender), blend the soup so it’s nice and creamy. If you don't have an immersion blender, transfer the soup to a food processor or blender. You may need to work in batches depending on the size of your blender or food processor.
Once the mixture is smooth, it’s ready to be served. You can top it with some more half-and-half, fresh basil, parmesan cheese, croutons, or serve it with a grilled cheese sandwich