The best buses from Ouarzazate to Marrakech are run by CTM and Supratours.
CTM buses leave Ouarzazate for Marrakech 5 times a day, from 8:30 until 23:00. They run via Agouim, but do not require a change there.
Supratours buses depart Ouarzazate 3 times a day, from 8:30 to 16:00.
Return buses from Marrakech to Ouarzazate run on similar timetables.
The travel time on buses from Ouarzazate to Marrakech is between 4h0m and 4h45m.
Buses that depart during the day pull over at the midpoint of the journey for a 15 minute food and bathroom stop.
The fare of a single ticket for buses from Ouarzazate to Marrakech is 90 Dh on CTM buses and 80 Dh on Supratours buses.
The best buses from Agadir to Marrakech are run by a company called Supra Tours.
Supra Tours is a subsidiary of ONCF, the national rail company. They run high quality air conditioned buses throughout the country.
Buses from Agadir for Marrakech depart several times a day from morning until evening, and are a great way to travel when visiting Morocco.
The total travel time from Agadir to Marrakech is 5 hours. Buses make a stop mid-way for a food and bathroom break.
Coaches fill up in advance, so consider buying your ticket the day before you travel. The cost of a single ticket on buses from Agadir to Marrakech is 80 to 90 Dh.
Trains from Casablanca city to the airport are a good way to get from the center of the city to your flight when visiting Morocco.
Casablanca is located 30km (19 mi) from Mohammed V Airport (CMN) airport.
Trains from the Casablanca city center depart every hour from the Casablanca Voyageurs train station. They arrive at the airport railway station, from where you can walk to the terminals.
The travel time is 32 minutes from the city center to the airport.
Tickets for trains from Casablanca city to the airport cost 60 Dh for first class and 40 Dh for second class.