Add the ground beef to a soup pot/Dutch oven and break it up a little bit with your spoon. Let it cook, without stirring, over medium-high heat for 5-6 minutes.
Add the onion to the pot and stir/break the beef up into small pieces. Let it cook for another 5 minutes or so. If there's a lot of excess fat (like if you didn't use lean beef), spoon some of it out. Otherwise, leave it in the pot.
Stir in the garlic, red pepper flakes, Italian seasoning, and orzo. Cook for about a minute.
Stir in the tomato sauce, beef broth, cream, and Worcestershire sauce. Once it starts to bubble, continue cooking for 10 minutes, uncovered, stirring fairly often (so the orzo doesn't stick to the bottom of the pot). You will likely need to turn the heat down a bit (to medium or even medium-low). It should gently bubble vs. boil (you don't want the liquid to reduce too much before the pasta has cooked).
Take the pot off the heat, stir in the parmesan and spinach, and cover the pot for about 3-5 minutes or until it has thickened up to your liking. Season with salt & pepper as needed and serve immediately. See more troubleshooting tips in the blog post and notes below.
Notes
Serves 4-6 depending on portion size/what else it's served with.
Tomato sauce in North America is similar to passata in the U.K./Australia/etc.
As with any one pot pasta dish, the liquid quantities work as tested in my kitchen, but pots/stoves/temperatures can vary, so if you feel like it needs more liquid, add another splash of cream or broth. If it seems too liquidy, let it sit for a bit longer, and it'll soak any excess liquid up within a few minutes.