Bring a large pot of water to a boil. Add a generous pinch of salt, then cook the pasta until just al dente. Drain it and set aside, saving a little pasta water.
While the pasta cooks, heat the olive oil in a large pan over medium heat. Add the ground beef and let it sit for a minute before breaking it up so it browns nicely.
Once the beef is mostly browned, add the chopped onion. Stir and cook until soft and lightly golden.
Add the garlic and cook for about 30 seconds, just until it smells good. Do not let it burn.
Season with salt, black pepper, and paprika. Stir everything together. Add the tomato sauce and let it simmer gently for a few minutes.
Pour in the cream and lower the heat. Let the sauce simmer slowly until it thickens slightly and looks creamy and smooth.
Add the cooked pasta to the pan. Toss everything together until the pasta is fully coated in the sauce. Add a splash of pasta water if needed.
Taste and adjust seasoning if needed. Stir in the parmesan cheese if using, then remove from heat.
Serve warm. Plate it up or eat it straight from the pan.