Your Morocco Transport Guide Trains Buses Taxis and Realistic Travel

Trains link Morocco's northern cities efficiently, but the south and desert rely on buses that sell out and grands taxis that leave only when full.

How to Move Between Cities and Regions in Morocco

The gap between what Google Maps promises and what the road delivers is routinely three hours and a lot of heat. This guide lays out what actually connects where, how much time each leg costs, and which method works reliably for each region. The ONCF train network covers the main north-south spine: Marrakech, Casablanca, Rabat, Fes, and Tangier. Everything east of that spine or south of the Red City runs on buses, grands taxis, or your own rental car. Plan around the rail corridor first. Build the rest as bus and taxi connections off it.

The Train Corridor: What the ONCF Network Actually Connects

The Office National des Chemins de Fer runs a rail network that links Marrakech, Casablanca, Rabat, Fes, and Tangier on a single main line. Trains are the most reliable intercity option in the country. They depart on schedule. They have air conditioning on most mainline services. Buying a ticket at the station on the day of travel is fine for all conventional trains. First Class gets you a six-seat compartment or open-plan seating; Second Class uses eight-seat compartments. Both work for the two- to four-hour rides between the major cities.

The one exception to the buy-on-the-day rule is Al Boraq, the high-speed train on the Tangier, Kenitra, Rabat, Casablanca axis. That line requires a dated ticket tied to a specific departure. Seats on popular times sell out.

Al Boraq High-Speed Train

Al Boraq runs from Tangier to Casablanca via Kenitra and Rabat. Travel time from the Strait to the White City is roughly 2 hours 10 minutes, compared to 5 hours on the conventional train. Buy tickets through the ONCF website, the ONCF mobile app, station counters, or self-service kiosks at major terminals. Book at least a day ahead for Friday and Sunday departures, when the Tangier, Casablanca route fills with weekend travellers and diaspora visitors. First Class costs about 400 MAD one way; Second Class runs around 300 MAD.

Conventional Lines and What They Miss

The conventional network stops at Marrakech in the south. No train reaches Ouarzazate, Zagora, or any Sahara destination. The network also stops at Fes and Tangier in the north. No train reaches Chefchaouen, the Rif Mountains, or the Mediterranean coast beyond the port city. For the south, the Atlas, and the desert, you move off rail and onto buses.

One rail exception worth knowing: Supratours, an ONCF subsidiary, runs buses timed to rail connections from Marrakech and Fes. Buy a combined train-and-bus ticket at ONCF counters.

Moroccan train
U.S. Army photo by Sgt. Christopher Sanchez , Public domain via Wikimedia Commons

CTM Bus Booking: the Backbone for the South and Mountains

CTM is the primary bus operator for intercity routes the train does not cover. The booking process is straightforward on paper and frustrating in practice. Tickets are dated and tied to a specific departure. Book through the CTM website, the CTM mobile app, station counters, or authorised agencies. The friction arrives when you try to pay online with a foreign card: the site rejects Visa and Mastercard issued outside Morocco about half the time. Workaround: buy at a CTM counter the day before, or ask your riad to purchase on your behalf.

The key routes where sellouts happen are Marrakech to Merzouga, Fes to Chefchaouen, and Marrakech to Essaouira. A day ahead is enough for Marrakech to Fes or Casablanca to Tangier. For the desert and mountain routes, the day before may already be too late.

Which Routes Matter Most

Marrakech to the Erg Chebbi dunes via Ouarzazate and Errachidia is the classic desert bus route. Travel time is 8 to 10 hours, departing early morning. The alternative: break the journey at Ouarzazate, visit Aït Benhaddou, then take a grand taxi to the desert. Fes to the blue city is a 4-hour ride through the Rif Mountains. That route runs one or two departures a day. Book as soon as your dates are fixed. Marrakech to Essaouira runs multiple times daily and is easier to get a seat on the day, but the 2.5- to 3-hour ride on the coastal road still sees sellouts in peak season.

Supratours as Fallback

Supratours operates similar routes to CTM, especially from Marrakech to Essaouira, Marrakech to Ouarzazate, and Marrakech to Laayoune and Dakhla. The buses are comparable in quality: reclining seats, air conditioning, a single baggage hold, and a dated ticket tied to a specific departure. Supratours counters sit at ONCF stations, which makes them convenient if you arrive by train and need onward bus travel. Baggage policy for both operators allows one piece in the hold plus a cabin bag. Excess baggage costs extra per kilogram.

Grand Taxi Shared: How Intercity Taxis Actually Work

The grand taxi shared system is the fix for routes no bus covers or when the bus has sold out. Grands taxis are six-passenger Mercedes sedans or minivans that ply fixed intercity routes. They depart only when full. That means five other passengers plus the driver. Wait time at the rank can be 10 minutes or 90 minutes, depending on demand. Fares are fixed by route and set by local associations, not the driver. Pay cash to the driver on arrival. No ticket. No advance booking. No online payment.

Typical fares: Marrakech to Essaouira about 100 MAD per person, the Red City to Ouarzazate about 120 MAD, Fes to Chefchaouen about 100 MAD. If you have bulky luggage, the driver will put it on the roof rack. You may be asked to buy a sixth seat for your bag to compensate for lost passenger space.

When to Take a Grand Taxi

Grands taxis work best for day trips from a city base: Marrakech to Ourika Valley (1 hour, shared, depart when full), Fes to Meknes and Volubilis (1.5 hours, shared), Tangier to Asilah (45 minutes, shared or by train). They also work as a last resort when CTM is sold out on the Marrakech, Merzouga run. The full shared fare for that long route (8+ hours) is steep; drivers may ask for 300+ MAD per person.

The failure case: at 5pm in a small town with no bus and a half-empty grand taxi rank, you wait until the taxi fills or you pay for the empty seats. Budget for the scenario where you buy two seats to force a departure.

Morocco Intercity Travel Times: What the Map Oversells

Intercity travel times are deceptive. Roads wind, narrow to single lane through mountain passes, or clog with highway toll delays. Here are the numbers that matter:

  • Marrakech to Ouarzazate: 200 km, 4+ hours via the Tizi n'Tichka pass. The road is an engineering feat of switchbacks. Overtaking is dangerous. Plan for 4.5 hours with a rest stop.
  • Chefchaouen to Fes: 200 km, 4+ hours through Rif Mountain roads. Curves, livestock, trucks. No highway alternative.
  • Agadir to Essaouira: 175 km, 3+ hours on the coastal road. Single lane each direction, shared with trucks and tourist minibuses.
  • Errachidia to Merzouga: 130 km, 2.5+ hours through a desert plateau that looks flat on the map but has speed limits, police checks, and sand-drifted sections.
  • Tangier to Marrakech by Al Boraq: 2 hours 10 minutes high-speed to Casablanca, then 2 hours 45 minutes conventional to the Red City. Total about 5 hours, not counting transfer wait at Casa Voyageurs.

The highway toll system uses ticket-on-entry and cash or card payment on exit. Keep 50 to 100 MAD in small bills for tolls if you drive yourself. Fuel stations accept cash widely and cards at major-brand stations along main highways.

Rabat street traffic
JopkeB , CC BY-SA 4.0 via Wikimedia Commons

Petit Taxis, Domestic Flights, and the Self-Drive Option

Petit taxis operate within city limits only. Maximum three passengers. Metered or negotiated. At tourist chokepoints, Marrakech Menara Airport, Casa Voyageurs, the Fes medina gate, drivers regularly refuse the meter and demand three to five times the correct fare. Insist on the meter. If the driver refuses, walk to the next taxi. At Marrakech airport, the official taxi fare to the medina is roughly 100 to 150 MAD. Any offer above that is a negotiation, not a fare.

Domestic Air as Time Saver

Royal Air Maroc and Air Arabia Maroc operate domestic flights from Casablanca Mohammed V to Marrakech, Agadir, Fes, Tangier, Oujda, Laayoune, Dakhla, Errachidia, and Ouarzazate. A flight from Casablanca to Dakhla saves two days of bus travel. Tickets are dated and tied to a specific flight. Book through the airline websites or mobile apps. The domestic air network supplements the train and bus system. It does not replace the Marrakech, Fes corridor, where the train is faster once you include airport transfer time.

Self-Drive: Rental Cars and What You Need

Car rental minimum age is 21. Your home-country licence is accepted, but get an International Driving Permit if your licence uses non-Latin script. The highway network is good between major cities on toll routes. Off the highways, expect two-lane roads shared with cyclists, livestock, and pedestrians. Road distances that look short are not: the 200 km between Chefchaouen and Fes takes as long as the motorway run between Casablanca and Marrakech because of road quality. Rideshare apps Careem, inDrive, and Roby operate in select cities but are not substitutes for intercity transport.

Local Friction Points That Derail Transport Plans

The thing that most often goes wrong is the combination of sellouts and failed online payments. You plan a Marrakech, Merzouga bus for the next day. The CTM website rejects your card. By the time you reach a counter, the bus is full. The solution: buy CTM tickets in person as soon as you arrive in a city, or pay a riad to buy them for you.

The second most common failure: assuming petit taxis at tourist hubs will use the meter. They will not. The third: the fake guide at the train station or medina gate who claims your riad is closed and offers to take you to a cousin's place. Ignore them completely.

No public toilets exist outside malls and major train stations. Carry small change, 2 to 5 MAD, for guarded squat toilets. ATMs in Merzouga, Todra Gorge, and mountain passes run out of cash on weekends. Withdraw enough in Marrakech or Fes before heading south. The helpful stranger who walks you uninvited through the medina then demands 100 to 200 MAD for the service is a predictable cost of entry. Say no firmly at the start, or accept that you will pay.

Connectivity and Booking Tools

Buy a Maroc Telecom or Orange SIM at the airport on arrival. You need your passport to register. Inwi has weak coverage in the Atlas and desert. eSIM works but costs more. Wi-Fi in riads is limited to the courtyard, not the rooms. For booking CTM and ONCF, use the mobile app on a local SIM rather than the website; the app processes foreign cards more reliably. Or have your riad call the CTM station and hold a seat for you to pay in person within the hour.

Frequently Asked Questions

Can I buy ONCF train tickets online with a foreign credit card?

Yes, the ONCF website and mobile app accept foreign Visa and Mastercard for most tickets. The exception is some non-Moroccan Amex cards. For Al Boraq, book online. For conventional trains, buying at the station counter on the day is simpler and avoids card rejection.

What do I do when the CTM bus to Merzouga is sold out?

Two options: take a grand taxi from the CTM station or Souq bus depot, or rent a car in Marrakech and drive the Tizi n'Tichka pass. The grand taxi option costs more per person but departs when full. The drive requires confidence on mountain roads.

How do I handle petit taxi drivers who refuse the meter in Marrakech?

Walk away. At Marrakech Menara Airport, use the official taxi queue where the fare to the medina is posted at roughly 100 to 150 MAD. Inside the city, flag another taxi. Most drivers will use the meter if they see you are not a pushover.

Which is faster from Fes to Chefchaouen: CTM bus or grand taxi?

Same time, roughly 4 hours. The CTM bus costs about 80 MAD per person and departs on a schedule. The grand taxi costs about 100 MAD per person and departs when full. Both are subject to delays on the Rif Mountain road.