Prep your ingredients: Chop the onion, mince the garlic, and set everything within reach.
This helps the cooking move smoothly.
Brown the meat: Heat olive oil in a large skillet or Dutch oven over medium-high heat. Add the ground meat and break it up with a spoon. Season lightly with salt and pepper and cook until deeply browned with crispy edges, 6–8 minutes.
Drain excess fat if needed.
Sauté aromatics: Add the onion to the pan. Cook until soft and translucent, about 4 minutes. Stir in the garlic and cook for 30–60 seconds, just until fragrant.
Toast the tomato paste: Stir in the tomato paste and let it cook for 1–2 minutes.
It should darken slightly and smell sweet. This step builds a rich base.
Add tomatoes and seasonings: Pour in the crushed tomatoes and 1/4–1/2 cup broth (or water) to loosen the sauce. Add dried oregano, dried basil, a pinch of red pepper flakes if using, bay leaf, and sugar if your tomatoes taste sharp.
Stir well and bring to a gentle simmer.
Simmer the sauce: Reduce heat to low and let the sauce bubble gently for 15–25 minutes, uncovered, stirring occasionally. It should thicken slightly and taste mellow and savory. Taste and adjust salt and pepper.
Boil the pasta: While the sauce simmers, bring a large pot of salted water to a rolling boil.
Add the spaghetti and cook until al dente, usually 1–2 minutes shy of the package instructions. Reserve 1 cup of pasta water before draining.
Combine pasta and sauce: Remove the bay leaf. Add the drained spaghetti to the sauce and toss.
If it seems tight, splash in some reserved pasta water until the sauce clings silky-smooth to the noodles.
Finish and serve: Taste again and adjust seasoning. Serve hot with freshly grated Parmesan and a sprinkle of chopped basil or parsley.