Step 1- Blend the bread paste. Put 2 cups of the bread cubes in a blender or food processor with the water, ¼ cup olive oil, both garlic cloves, and ½ teaspoon salt. Blend until it forms a smooth paste. This paste is what gives the finished soup its signature thick, creamy texture.
Step 2- Cook the onion. Heat 2 tablespoons of olive oil in a large pot over medium-low heat. Add the chopped onion and cook until it's very soft but not browned, about 8-10 minutes. Patience matters here rushing this step means an underdeveloped flavor base.
Step 3- Simmer the tomatoes. Add the chopped tomatoes, sugar, 1 teaspoon salt, and black pepper to taste. Turn the heat to medium and bring everything to a simmer. Cover the pot and cook until the tomatoes turn very soft, about 25 minutes, then mash them into a coarse puree using a wooden spoon.
Step 4- Combine and thicken. Stir the bread paste into the tomato mixture. If the soup seems too thick, add a splash more water to loosen it up. The texture should be dense and creamy, but still spoonable not quite a stew, not quite a broth.
Step 5- Toast the remaining bread. Drizzle olive oil over the remaining bread cubes and toast them in a skillet over medium-high heat until golden and crisp, stirring occasionally, about 5 minutes. This crunchy topping is non-negotiable it's the textural contrast that makes the whole bowl work.
Step 6- Season, garnish, and serve. Taste the soup and adjust with additional salt and pepper as needed. Garnish with the toasted bread, fresh basil leaves, and a swirl of olive oil. Serve it warm, at room temperature, or chilled your call.