In a large saucepan, warm oil over medium-high heat.
Add onions and cook until softened, stir frequently.
Once onions are done add in garlic and cook for another minute or so.
Add flour to onions and garlic, stirring to blend, about 1 minute.
Add tomatoes with liquid, basil, and broth to the saucepan.
Increase to high heat and bring to a boil, you need to stir constantly to get the mix to thicken, takes about 3 minutes.
Place mixture into blender or food processor, you may not get in all in one batch.
Blend until smooth.
Once all the soup is pureed, return soup to saucepan, stir in cream and cook over low heat for 3 to 5 minutes, or warmed through.
Do not boil.
Season with salt and pepper.
Serve in a bowl with a roll or salad.