Preheat your oven to 400°F (200°C). Place the sliced Roma tomatoes on a baking sheet. Drizzle with about 1 tablespoon of the olive oil, sprinkle with a little salt and pepper, and toss gently to coat. Roast for 30-40 minutes, or until they are soft, slightly caramelized, and a little shriveled.
While the tomatoes are roasting, grab a large pot or Dutch oven. Heat the remaining 2 tablespoons of olive oil and the butter over medium heat. Add the diced onion and cook, stirring occasionally, until softened and translucent, about 5-7 minutes.
Stir in the minced garlic and fresh thyme. Cook for just 1-2 minutes more, until fragrant. Be careful not to burn the garlic!
Add the roasted Roma tomatoes (juice and all!), the crushed San Marzano tomatoes, salt, pepper, and sugar to the pot. Stir everything together.
Pour in the chicken stock. Bring the mixture to a gentle simmer, then reduce the heat to low, cover, and let it simmer for about 15-20 minutes. This allows all those wonderful flavors to meld together.
Blend it Up: You can use an immersion blender right in the pot – carefully blend until smooth or your desired consistency. If you're using a standard blender, work in batches. Fill the blender only halfway, leave the little cap in the lid slightly ajar (or remove and cover with a kitchen towel) to let steam escape, and hold the lid down firmly. Blend until smooth. Return blended soup to the pot.
Stir in the heavy cream and fresh chopped basil. Cook for another 5 minutes, stirring, until the soup is heated through and the basil has wilted slightly. Taste and adjust seasoning if needed.