Combine the onions, oil, and a pinch of salt in an 8- to 9-inch-wide saucepan and set over medium heat. It's okay if all the onions aren't covered, but stir it gently to coat them all.
Warm over medium heat until the oil begins to simmer and bubble a little. Reduce the heat to low and set the saucepan on a diffuser (such as a Flame-Tamer) to maintain an even low heat. You can also use one side of a cast iron griddle or set the pan inside a large cast iron pan. It's important that the heat is very even because a hot spot will cause the onions to burn. Spend some quality time with the pan adjust the heat so that the oil only boils very gently. The slower the better with this dish.
The onions should stew slowly but eventually caramelize; adjust the heat as necessary so that the oil continues to bubble gently. As the onions release their liquid, the oil will become cloudy, but once the moisture has evaporated, the oil will clear. Stir every 15-20 minutes.
Cook for about 2½ hours, or until the onions are a rich golden brown (a shade darker than a golden raisin) and the oil is perfectly clear. Check the pan often; if any of the onions have caramelized against the sides of the pan, scrape them back into the oil.
Meanwhile, for a quick tomato puree, cut the tomatoes lengthwise in half. Gently squeeze out the seeds and discard.
Hold the cut side of each half against the large holes of a box grater and grate the tomato flesh; discard the skin. You will have about 1 cup of tomato puree.
Add the tomatoes to the caramelized onions and cook for 2 to 2½ hours longer (stirring occasionally), or until the onions and tomatoes begin to fry in the oil: the mixture will sizzle and small bubbles will cover the entire surface.
Gently stir the mixture - the tomatoes and onions will separate from the clear oil. Turn off the heat, add another pinch of salt and the garlic, and let the soffritto cool in the pan.
The soffritto will keep covered in the refrigerator for up to 1 week (keep it submerged in the oil). Drain it before using. The oil can be used to start another soffritto (the next one will be even richer and more full bodied).