Cook pasta according to package directions, omitting the salt and fat. Drain pasta (I drain on top of the fresh baby spinach), reserving 1/2 cup pasta water (I replaced this with more chicken broth for flavor).
Melt butter in a large nonstick skillet over medium-high heat. Add garlic, saute 30 seconds. Add reserved pasta water (Again, I used chicken broth) and cream cheese, stirring with a whisk until smooth.
Combine broth and flour in a small bowl, stirring with a whisk until smooth. Add flour mixture to pan, stirring with a whisk to combine, bring to a boil. Cook 2 minutes or until mixture thickens, stirring constantly. Remove from heat, add parmesan cheese, stirring until smooth. Add half-and-half (I used skim milk), salt and pepper. Stir in spinach (Unless you wilted the spinach with the pasta). Combine cheese mixture and pasta in a large bowl, tossing to coat. Sprinkle each serving with bacon (If using).
Quick final thought: One issue I had the first time I made this was on timing everything to get done at the same time. I found with this attempt that if I start making the cream sauce and sauteing the salmon right after I put the pasta in the boiling water the timing works out pretty well.