It usually doesn't escape people's attention when planning a trip to Spain that you have Africa right on your doorstep. Morocco is just 20 miles from Spain... but it's a lot farther from Barcelona than that. So what's the best way to get from Barcelona to Morroco?
The Best Way
Undoubtedly, flying is the best, as it gets you straight to one of Morocco's top cities, such as Marrakech. The direct ferry takes 24 hours, which is longer than taking the train down to the south coast and then taking a ferry from there.
If you want to avoid both flying and the day-long ferry, you'll need to get to the south coast. The quickest way to do this is to take the AVE high-speed train from Barcelona to Malaga (the journey takes five-and-a-half hours) and then to take a bus from Malaga to Tarifa. Only slightly slower, but a lot more interesting, is to take the train from Barcelona to Seville, spend a few days in Seville (a far nicer city than Malaga) before taking the bus from Seville to Tarifa.
From Tarifa, there are frequent ferries to Morocco.
There are several flights from Barcelona to Morocco. Cities in Morocco with flights from Barcelona include Marrakech (Marrakesh), Fez (Fes), Casablanca, Nador, and Tangier.
Compare Prices on Flights from Barcelona to Morocco
Ferries from Barcelona to Morocco take approximately 24 hours. They also drop you off in one of Morocco's least exciting cities, Tangier. This route is not recommended.
This ferry is run by GNV.