Bring a large pot of well-salted water to boil for the rigatoni. The water should taste like the sea – about 1 tablespoon of salt per 4 quarts of water.
Cook pasta until just shy of al dente, usually 1-2 minutes less than package directions. The pasta will finish cooking in the sauce, so it’s better to undercook slightly at this stage.
While pasta cooks, heat olive oil in a large skillet over medium-high heat. Add the ground beef, breaking it apart with a wooden spoon. Season with salt and pepper and cook until browned, about 5-6 minutes.
Add diced onion to the beef and cook until translucent, about 3-4 minutes. Then add minced garlic, Italian seasoning, and red pepper flakes (if using) and cook for another 30 seconds until fragrant.
Pour in beef broth and let it simmer for 2-3 minutes, scraping up any browned bits from the bottom of the pan – these contain tons of flavor!
Before draining pasta, reserve 1 cup of the starchy cooking water. Drain pasta but do not rinse – that starch is crucial for the sauce.
Reduce heat to medium-low and add butter to the beef mixture, stirring until melted. Then pour in heavy cream and stir to combine.
Add the drained rigatoni directly to the skillet along with 1/2 cup of the reserved pasta water. Toss everything together for about 1-2 minutes.
Gradually sprinkle in the grated Parmesan, stirring constantly to create a smooth, creamy sauce. Add more pasta water as needed if the sauce seems too thick.
Taste and adjust seasoning with salt and pepper. The Parmesan adds saltiness, so taste before adding more salt.
Serve immediately in warmed bowls, topped with extra Parmesan and fresh herbs. The sauce will continue to thicken as it cools.