Blanch spinach in batches by cooking it in salted, boiling water for a few seconds, then plunging it in ice water to stop the cooking. (To save time, use frozen, chopped spinach!)
Squeeze out excess liquid and chop.
In a medium-sized skillet over medium heat, saute bacon 2 or 3 minutes. Add diced onion and continue to cook until onion is translucent another 3 or 4 minutes. Add garlic, spinach and seasonings and cook another minute.
In a medium saucepan, heat butter until melted. Add flour, stirring with a spoon until flour is incorporated and begins to turn slightly golden, about 2 minutes. Whisk in milk and bring to a boil. Reduce heat and cook until sauce begins to thicken about 3 minutes.
Add cream sauce to the spinach mixture.
In a food processor pulse spinach 3 or 4 times. It should retain its texture. Taste and adjust seasonings if necessary.
Can be made a day ahead of time.