Preheat oven to 400 degrees.
Melt the butter over medium heat. Add the flour and whisk the melted butter and flour for 3-5 minutes. There should be no lumps and the roux will turn blond.
Slowly whisk in the milk and bring the mixture to a boil. Season with salt and cayenne pepper. Let the mixture simmer for around 5 minutes or until it is thick and coats the back of a spoon. (Be sure to whisk the mixture from time to time.)
In a separate sauce pan, heat the vegetable oil over medium heat. Add the onion and saute for 2 minutes. Add the the spinach (a handful at a time). Once the spinach is added, add the garlic and artichoke hearts and saute for 2 minutes. Season the vegetables with a little salt and cayenne pepper. Remove the pan from the heat and add the vegetables to a large bowl.
Add the cheese sauce to the bowl of vegetables. Gently stir to incorporate all of the ingredients.
Pour the mixture into a baking dish. Cook in the oven for 10 to 15 minutes, or until the top is golden brown.
Serve with tortilla chips!