Boil the pasta: Bring a large pot of well-salted water to a boil.
Cook pasta until just shy of al dente. Reserve 1 cup of pasta water, then drain.
Crisp the bacon: In a wide skillet over medium heat, cook bacon until golden and crisp. Scoop out to a plate, leaving 1–2 tablespoons of bacon fat in the pan.
Sauté the aromatics: Add olive oil if needed.
Cook onion with a pinch of salt until soft, 3–4 minutes. Add garlic and cook 30 seconds, just until fragrant.
Brown the mushrooms: Add mushrooms and a small pinch of salt. Let them sit to sear, then stir occasionally until browned and any liquid cooks off, 6–8 minutes.
Deglaze and build flavor: Pour in broth (if using) to lift browned bits.
Let it reduce by half. Stir in butter for extra gloss.
Make it creamy: Lower heat. Add heavy cream and a small splash of pasta water.
Simmer gently 2–3 minutes until slightly thickened.
Add cheese and bacon: Stir in Parmesan until melted and smooth. Return bacon to the pan. Season with black pepper and a pinch of red pepper flakes.
Toss the pasta: Add pasta to the skillet and toss, adding more pasta water a little at a time until the sauce is silky and coats the noodles.
Brighten it up: Finish with lemon zest and a tiny squeeze of juice.
Fold in parsley. Taste and adjust salt and pepper.
Serve: Plate with extra Parmesan and a crack of pepper. Eat right away for peak creaminess.