Heat the olive oil: Place a large heavy pot or Dutch oven over medium heat. Add the olive oil and let it warm for about 30 seconds.
Cook the onion: Add the chopped onion and sauté for 5 to 7 minutes until soft and translucent. Stir occasionally so it cooks evenly without browning.
Add garlic: Stir in the minced garlic and cook for 1 minute until fragrant. Be careful not to burn it.
Build the tomato base: Add the crushed tomatoes, tomato sauce, and tomato paste. Stir thoroughly until smooth and well combined.
Season the sauce: Add sugar, salt, pepper, oregano, dried basil, red pepper flakes, and bay leaves. Stir again.
Simmer slowly: Reduce the heat to low and let the sauce simmer uncovered for 60 to 75 minutes. Stir every 10 to 15 minutes to prevent sticking.
Adjust consistency: If the sauce becomes too thick, stir in a little water or broth. If it is too thin, continue simmering a bit longer.
Finish with fresh herbs: Remove the bay leaves. Stir in chopped parsley and fresh basil during the last 5 minutes of cooking.
Taste and adjust: Taste the sauce and add extra salt or pepper if needed.
Serve: Spoon generously over hot cooked spaghetti. Finish with Parmesan cheese and extra basil if desired.