Spread tomatoes and garlic in one layer on a large baking sheet. Drizzle with 3-4 tbsp of olive oil and season with salt and pepper. Roast in the oven for 30-35 minutes or until tomatoes are lightly charred on the outside and tender on the inside. Remove from oven and cool for 5 minutes. Remove skin from garlic.
While tomatoes are roasting, heat 1 tbsp of olive oil in a large pot or dutch oven. Add the onions and cook on medium heat until golden, about 4-5 minutes. Add salt, pepper, roasted tomatoes and garlic, broth, and basil leaves.
Transfer mixture to a blender and blend for one minute or until soup is creamy. Return soup to the pot and simmer for 5 minutes.