1. Heat a large skillet over medium high heat and melt the butter.
  2. Add the garlic and onion and cook until soft and translucent, about 5 minutes.
  3. Begin to add in the spinach one handful at a time and stir until it wilts.
  4. Add in the cream, parmesan, ricotta, and salt and pepper. Whisk and allow to cook until the liquid come to a gentle simmer.
  5. Remove from heat and add in the ham.  
  6. In a greased baking dish, cover the bottom with a few spoonsful of the alfredo mixture.
  7. Put down a layer of lasagna noodles, more alfredo and shredded mozzarella. Repeat this until all ingredients are used up.
  8. Preheat oven to 350°F.
  9. Cover lasagna with foil and bake for 30-35 minutes. Uncover and bake for an additional 5-7 minutes until the cheese is golden brown.
  10. Slice and serve warm.