Warm the pot: Set a large, wide pot or deep skillet over medium heat. Add the butter and olive oil.
When the butter melts and foams, move to the next step.
Sauté aromatics: Add the shallot or onion and cook 2–3 minutes until softened. Stir in the garlic and cook 30–45 seconds until fragrant. Don’t let it brown.
Build the base: Pour in the broth and milk.
Add salt, pepper, red pepper flakes, and Italian seasoning if using. Stir and bring to a gentle simmer.
Add the pasta: Add the dry pasta to the pot. If using long noodles, gently bend them as they soften to submerge.
Keep the heat at a steady simmer, not a rolling boil.
Simmer and stir: Cook uncovered, stirring often to prevent sticking, 9–12 minutes depending on the pasta. The liquid will reduce and thicken as the pasta releases starch.
Check doneness: Taste a noodle. It should be al dente with a light bite.
If the liquid reduces too quickly before the pasta is done, add a splash of broth or water and continue simmering.
Add the cheese: Reduce heat to low. Stir in the Parmesan a handful at a time until melted and smooth. The sauce should be creamy and glossy.
Brighten and adjust: Stir in the lemon juice.
Taste and adjust salt, pepper, and heat as needed. If the sauce seems too thick, loosen with a splash of warm broth or milk.
Finish and serve: Turn off the heat. Let the pasta sit 1–2 minutes to set.
Top with fresh herbs and extra Parmesan. Serve hot.