Sauté the onion: Heat olive oil in a Dutch oven over medium heat. Add the diced onion and cook for 5–7 minutes, until softened and lightly golden.
Add garlic and spices: Stir in the minced garlic, Italian seasoning, garlic powder, and onion powder. Cook for 1 minute, just until fragrant.
Brown the beef: Add ground beef and cook until no longer pink, breaking it apart with a spoon as it browns. Drain off excess fat if needed.
Stir in the tomatoes and sauce: Add the diced tomatoes and tomato sauce to the pot. Mix well to combine.
Season the sauce: Stir in the granulated sugar, Worcestershire sauce, and bay leaves. Add the fresh basil and parsley. Season with salt and pepper to taste.
Simmer low and slow: Bring the sauce to a simmer, then reduce the heat to low. Partially cover the pot and let the sauce simmer for 1 to 2 hours, stirring occasionally.
Adjust and serve: Remove bay leaves. Taste and adjust seasoning if needed. Serve over your favorite pasta or freeze for later use.