Agreed, Casablanca is kind of a dump. Marrakech is nice. In addition to lots of commercial flights, you can also take a ferry. If you're staying in Andalucia, that might be a nice and different option. I think they all arrive to Tangier, also a worthwhile place to visit.