Melt the butter in a frying pan and saute celery and onions until tender. Add the garlic and saute a little more until the garlic is almost tender.
Meanwhile, puree 2 cans of the tomatoes in a blender until smooth and pour into a soup pot. Add onion/celery/garlic mixture to the blender along with the remaining can of tomatoes, flour and spices. Blend until smooth and add to soup. Begin to heat up on medium high.
Add a pinch of soda to the tomato mixture and continue to heat. As it begins to warm and get steamy, add the half and half (or milk). Continue to heat on medium low stirring from time to time until hot.
Eat it with a grilled cheese sandwich on a cold and rainy day!