Boil the pasta: Bring a large pot of salted water to a rolling boil. Cook the pasta to al dente according to the package. Reserve 1 cup of the starchy pasta water, then drain.
Crisp the bacon: While the pasta cooks, heat a large skillet over medium.
Add the bacon pieces and cook until golden and crisp, about 6–8 minutes. Transfer bacon to a paper towel–lined plate. Leave 1–2 tablespoons of bacon fat in the pan and discard the rest if needed.
Sauté aromatics: Add minced garlic and red pepper flakes to the bacon fat. Cook 30–60 seconds, stirring, until fragrant.
Don’t let the garlic brown.
Deglaze and build the sauce: Pour in the broth and scrape the pan to lift any browned bits. Simmer 1–2 minutes, then add the cream. Stir and let it bubble gently for another minute.
Add cheese and adjust: Reduce heat to low.
Stir in Parmesan a little at a time until melted and smooth. If the sauce looks thick, add splashes of pasta water to loosen.
Combine pasta and spinach: Add the drained pasta to the skillet and toss to coat. Add the spinach by handfuls, stirring until it wilts into the sauce.
Use more pasta water if needed so the sauce stays silky and coats the pasta.
Finish with bacon and lemon: Stir the bacon back in, saving a little for topping. Add lemon zest and a squeeze of juice if using. Taste and season with salt and black pepper.
Keep in mind the bacon and Parmesan are already salty.
Serve: Top with reserved bacon and extra Parmesan. Add a crack of black pepper and a pinch of red pepper flakes if you like heat.