I wouldnt worry about it too much. In the south the spanish they speak is trash... they take off the s in every word. So instead of españa its epaña. In the south they are very difficult to understand vs. madrid or anywhere else. The regional element of spanish in spain is pretty different each place. I lived in spain for more than a year (basque country) and went to sevilla and had a difficult time understanding. The best spanish comes from valladolid btw. Just worry about basic speaking and don't sweat it too much. It's true though that in spain they don't generally speak english as much as in other european countries. So you will definitely get a chance to practice. I generally find the spanish in spain (besides the south) to be fairly clean and easy to understand. Sure they have slang, but not as the same level as in mexico. Weirdest spanish for me is the puerto rican, cuban and panama. The best spanish on this side of the world is in peru.
Essaouira is a pretty cool coastal town in Morocco. You can make a day trip to it to get out of the craziness of Marrakech and other cities. Also, part of Game of Thrones was shot there if you care for that sort of thing.