In a large pot, heat the olive oil over medium heat. Add the diced onion and sauté until it becomes translucent, about 5 minutes.
Stir in the minced garlic and cook for an additional 1-2 minutes, being careful not to let it burn.
Add the diced tomatoes (with their juice), vegetable broth, tomato paste, sugar (if using), dried basil, dried oregano, salt, and black pepper to the pot. Stir well to combine all the ingredients.
Bring the mixture to a gentle boil, then reduce the heat to low. Cover the pot and let it simmer for 20-25 minutes, allowing the flavors to meld together.
After simmering, use an immersion blender to puree the soup until smooth. Alternatively, carefully transfer the soup in batches to a countertop blender and blend until creamy.
Stir in the plant-based milk or coconut milk, adjusting the amount based on your desired creaminess. Heat the soup for an additional 5 minutes on low heat, then taste and adjust seasonings if necessary.
Serve hot, garnished with fresh herbs or croutons if desired.