In a large pot, heat the olive oil on medium-low. Add the onions and kosher salt. Saute, stirring occasionally until the onion is soft and translucent.
Add the garlic, thyme, and oregano to the pot and saute for another 30 seconds.
Pour in the stock (either vegetable or chicken), tomatoes, and a pinch of sugar. Bring to a boil. Then lower the heat to produce a gentle simmer.
Partially cover the pot and let simmer for 50-60 minutes.
Remove the soup from the heat and let cool a few minutes.
Using a stick blender, or in batches in a regular blender, puree until it's as smooth as you like it.
Taste and add salt and pepper as needed.
Return the soup to the pot (if you took it out) and bring it back to a simmer before serving.