Cook pasta according to package until al dente. Drain & set aside.
In a large deep skillet, heat olive oil.
Add onions and saute until tender.
Add garlic and saute until fragrant.
Add butter and stir until melted.
Sprinkle in flour and cook until flour is golden, about 2-3 minutes.
Slowly pour in chicken broth and milk.
Let simmer, stirring often until sauce has thickened enough to lightly coat the back of a spoon.
Stir in parmasan cheese.
Taste and add salt and black pepper to bring out the taste.
Add the spinach, and simmer until spinach has wilted
Stir in noodles.
Plate and sprinkle on the bacon.