Bring a large pot of salted water to a boil. Add the rotini pasta and cook according to the package instructions, usually 9-11 minutes, until al dente. Reserve 1 cup of pasta water, then drain the pasta.
In a large skillet, heat olive oil or butter over medium-high heat. Add the ground beef, breaking it into smaller pieces. Cook for 5-7 minutes until fully browned. Drain any excess fat and set the beef aside.
In the same skillet, add minced garlic and cook over medium heat for 1 minute, stirring constantly until fragrant.
Sprinkle flour over the beef and garlic mixture, stirring to combine. Gradually add milk, stirring continuously to avoid lumps. Bring to a simmer and cook for 2-3 minutes until the sauce thickens.
Stir in the grated Parmesan cheese, Italian seasoning, salt, and pepper. Cook for another 1-2 minutes until the cheese is melted and the sauce is smooth.
Add the drained rotini pasta to the skillet, tossing to coat with the sauce. If the sauce is too thick, gradually add reserved pasta water, a tablespoon at a time, until desired consistency is reached.
Sprinkle freshly chopped parsley over the dish. Serve immediately and enjoy!