Ingredients:
- 1 tablespoon (15 ml) olive oil
- 2 cloves garlic, minced
- 1 small yellow onion, finely chopped
- 1/4 teaspoon (1.5 ml) ground nutmeg
- 1/4 teaspoon (1.5 ml) red pepper flakes (optional)
- 1 (10 ounce/283g) package frozen chopped spinach, thawed and squeezed dry or 1 pound (454g) fresh spinach, washed, stemmed, and chopped
- 2 tablespoons (30g) unsalted butter
- 2 tablespoons (30g) all-purpose flour
- 1 1/2 cups (355 ml) whole milk
- 1/2 cup (113g) heavy cream
- 1/2 cup (56g) grated Parmesan cheese, plus more for topping
- 1/4 cup (28g) grated Gruyere cheese (optional, but highly recommended!)
- Salt and freshly ground black pepper to taste
Instructions:
- Heat olive oil in a large skillet over medium heat. Add garlic and onion and cook until softened and fragrant, about 3-5 minutes. Stir in nutmeg and red pepper flakes (if using).
- Add squeezed-dry spinach to the skillet. Cook, stirring occasionally, until heated through, about 2-3 minutes.
- Melt butter in the same skillet (or a separate saucepan) over medium heat. Whisk in flour and cook for 1-2 minutes, stirring constantly, until a smooth paste forms (a roux).
- Gradually whisk in milk, a little at a time, ensuring no lumps form. Cook, stirring constantly, until the sauce thickens enough to coat the back of a spoon, about 5-7 minutes.
- Stir in heavy cream, Parmesan cheese, and Gruyere cheese (if using). Season with salt and pepper to taste.
- Add the spinach mixture to the cheese sauce. Stir until everything is well combined and heated through. Sprinkle with additional Parmesan cheese before serving (optional).