Brown the beef: Heat the Dutch oven over medium-high heat and add the ground beef, breaking it up as it cooks for 5–6 minutes, until browned throughout. Drain excess fat, leaving about a tablespoon behind for flavor.
Sauté the vegetables: Add the onion and bell pepper to the pot and cook for 4–5 minutes, until softened. Stir in the garlic and cook for 30 seconds more, until fragrant.
Build the sauce: Add the crushed tomatoes, tomato sauce, tomato paste, Worcestershire sauce, sugar, and Italian seasoning. Stir everything together until well combined.
Simmer uncovered for the full 30 minutes don’t shortcut this: Reduce the heat to low and let the sauce simmer uncovered, stirring occasionally, for a full 30 minutes. This is what actually separates a thin, watery sauce from a rich, thick one that clings to the noodles instead of pooling underneath them a shorter simmer leaves too much liquid in the pot, and the tomato flavor never gets the chance to concentrate and deepen the way it does with the extra time.
Cook the spaghetti: About 10 minutes before the sauce is done, bring a large pot of salted water to a boil and cook the spaghetti according to package directions until al dente. Reserve ½ cup of pasta water before draining.
Season and combine: Taste the sauce and adjust salt and pepper as needed the Worcestershire and tomato paste can vary in saltiness depending on brand. Pro tip: if the sauce seems too thick after the long simmer, loosen it with a splash of the reserved pasta water rather than plain water, since it carries a little extra starch that helps the sauce cling.
Melt in the cheese: Remove the sauce from heat and stir in about a cup of the shredded cheddar directly into the sauce until melted, reserving the rest for topping.
Serve and top: Serve the sauce over the spaghetti, topped with the remaining cheddar and a sprinkle of fresh parsley if using.