Plan your trip

How to get around Morocco: train, bus, taxi, plane and car

Trains link the big cities, buses reach the coast and the north, and for the desert and the Atlas you almost always need a car. How long each journey takes and what to choose for every leg.

Seats on the touring coach

To get between Tangier, Rabat, Casablanca, Fez and Marrakech, the train is fast, cheap and reliable. For Chefchaouen, Essaouira and the southern coast, take a CTM or Supratours bus. And for the desert, the valleys and the Atlas, which is where much of what people come to see is found, you need a car, either your own or one with a driver.

That is the short answer we give when someone writes to ask how to get around Morocco. Below are the details for each option, with the time journeys really take and the mistakes we see when people plan a route from the map alone.

ONCF trains

ONCF is the state railway company. Its network is shaped like a Y lying on its side: one line runs down the coast from Tangier to Casablanca and carries on south to Marrakech, and another heads east through Meknes and Fez to Oujda. There are no trains to Chefchaouen, Essaouira, Agadir, Ouarzazate or Merzouga.

Al Boraq, the high-speed line between Tangier and Casablanca

Al Boraq opened at the end of 2018 and links Tangier with Casablanca in just over two hours, with stops at Kenitra and Rabat. It was the first high-speed line in Africa, and for travellers the change was huge: today you can have breakfast in Tangier and lunch in Casablanca without a very early start.

It has first and second class, reserved seats and air conditioning. Tickets are sold on the ONCF website or app, or at the station ticket office, where you should have your passport to hand. At busy times, such as the end of Ramadan or the summer, the afternoon trains fill up, so it is best to buy a few days ahead.

High-speed track is being extended from Kenitra towards Marrakech, but as of 2026 that section is not in service. Until it opens, the Casablanca to Marrakech stretch is covered by conventional trains.

Conventional trains

These are comfortable trains, with compartments in first class and open carriages in second. Casablanca to Marrakech takes about two and three-quarter hours. Casablanca to Fez, about three and a half hours. Fez to Marrakech takes almost seven hours, and plenty of travellers choose it to save a day in the car, then regret how long it feels.

If you land at Mohammed V airport in Casablanca, there is a station beneath the terminal with trains into the city centre, where you change for Marrakech, Rabat or Fez. It is the cheapest way out of the airport, although with big suitcases and a change of train, a car transfer is a relief.

Our advice: first class costs only a little more and in summer it makes a real difference, because in second class you can end up standing on weekend trains.

CTM and Supratours buses

Where the train doesn't go, long-distance buses do. CTM is the largest private company, and Supratours belongs to the ONCF group, which is why its timetables are designed to connect with the trains. Both run air-conditioned coaches with assigned seats and a luggage hold that is paid separately, with a small fee per bag.

They are the obvious choice for Marrakech–Essaouira, about three hours, Fez–Chefchaouen, about four, or Tangier–Chefchaouen, about two and a half hours. There are also overnight buses from Marrakech and Fez to Merzouga, with many hours on board and arrival at dawn.

CTM and Supratours stations are not always next to the town's main bus station, which usually belongs to the local companies. Check carefully where your ticket departs from. The cheaper local companies stop in every village, are more crowded and keep less reliable timetables; for a traveller short on time they aren't worth it.

Taxis in and between cities

The petit taxi

This is the city taxi. Each city has its own colour: red in Casablanca and Fez, beige in Marrakech, blue in Rabat, among others. They take up to three passengers and cannot leave the city limits. They should use the meter, and if the driver says it isn't working, agree the price before you get in. A surcharge applies at night.

It is normal for the driver to pick up another passenger going the same way. It isn't a scam, it's the custom. Everyone pays their share.

The grand taxi

This is a larger car, often an old Mercedes or, increasingly, a Dacia or Peugeot estate, that runs from one town to another. It works like a small bus: it leaves from a fixed rank when every seat is taken, and each passenger pays for their seat. It is cheap and handy for short trips, such as Marrakech to Asni or Fez to Moulay Idriss.

For a traveller it has two drawbacks. You travel very cramped, and it doesn't stop where you want. If you are a couple or a family, you can pay for the empty seats and leave without waiting, although beyond a certain distance a car with a driver works out better.

Domestic flights

Royal Air Maroc and a few low-cost airlines fly within the country. The most useful for travellers are those linking north and south without going via the desert: Tangier or Fez to Marrakech, Casablanca to Agadir, and the southern airports such as Ouarzazate, Zagora and Errachidia, which is about two hours from Merzouga.

A one-hour flight can replace seven hours on the train, but count the time getting to the airport and waiting. Many domestic routes also go via Casablanca, which makes the journey longer. Routes and frequencies change a lot from year to year, so confirm them before you build your trip around a flight.

Hire car or car with a driver

For the part of the country with no railway, which is almost all of the south, there are two options: drive yourself or travel with a driver.

Hiring a car gives you freedom and isn't expensive, with small models from around €25 to €40 a day plus fuel, depending on the season. The motorways are good, but city traffic, police checkpoints and mountain roads need your attention. We cover all of it in our guide to driving in Morocco.

The other option is what we do: a private vehicle with a Spanish-speaking driver who picks you up at your hotel, knows the route and knows where to stop for lunch or photos. We explain how it works and what is included on the private driver in Morocco page. On our private tours the vehicle is priced per day and split between the travellers, so for a family or two couples it costs less than you might think.

Driving times between the main cities

These are the times we use when planning, with short stops and in normal conditions. With snow in the Atlas, roadworks or a long lunch stop, add more.

  • Casablanca to Rabat: about 90 km, around an hour on the motorway.
  • Casablanca to Marrakech: about 240 km, two and a half to three hours.
  • Casablanca to Fez: about 300 km, three and a half hours.
  • Tangier to Chefchaouen: about 115 km, two to two and a half hours.
  • Fez to Chefchaouen: about 200 km, around four hours on a mountain road.
  • Marrakech to Essaouira: two and a half to three hours.
  • Marrakech to Agadir: about 250 km, around three hours on the motorway.
  • Marrakech to Imlil: about 65 km, an hour and a half.
  • Marrakech to Ouarzazate over the Tichka pass: about 200 km, around four hours.
  • Marrakech to Merzouga: about 550 km, nine to ten hours without long stops.
  • Fez to Merzouga: about 470 km, seven to eight hours through the Middle Atlas.
  • Fez to Marrakech on the motorway: six to seven hours.

Notice one thing: Marrakech to Merzouga is the longest drive of the trip and there is no train alternative. That is why our desert routes split it over two days, with a night in the Dades Valley. That is how the 3-day route to Merzouga from Marrakech works, and the four-day version spreads the stages out even better.

Which transport to choose for each leg

Between the imperial cities

Train. Casablanca, Rabat, Meknes and Fez are well connected and the trip is stress-free. If you arrive via Tangier, Al Boraq gets you to Rabat or Casablanca quickly. From Fez to Marrakech the train works, but if you want to see Volubilis, the Roman site near Meknes, while you are passing, a car lets you stop.

Towards the north and Chefchaouen

Bus or car. From Tangier the bus is direct and cheap. From Fez it is four hours of bends, which are easier in a car because you can stop for a break. If you are heading north, read our Chefchaouen guide to see how many hours to spend there.

Towards the Atlantic coast

Bus from Marrakech to Essaouira, and train or bus from Casablanca to Rabat. Agadir has an airport and a motorway from Marrakech.

Towards the desert, the valleys and the Atlas

Car. You can get there by bus, but late, tired and having seen nothing on the way. The Dades Valley, the Todra Gorge, Aït Ben Haddou and Ouarzazate or the Atlas villages are best enjoyed by stopping, and only a car gives you that.

How to combine transport on one route

Many of our travellers mix and match. One example that works well for ten days: arrive in Tangier, take Al Boraq to Rabat or Casablanca, continue by train to Marrakech, and from there start a private tour to the desert that ends in Fez. From Fez, take the train again or carry on with the same driver to Chefchaouen and Tangier.

Another common combination: a flight from Fez to Marrakech at the end, so you don't repeat six or seven hours of motorway after you've already done the desert. That way a route like the 8-day imperial cities and desert trip can finish without retracing your steps.

If you arrive in Casablanca and want to head straight south, the 7-day trip from Casablanca to the desert starts with the driver waiting for you, so you don't have to hunt for the train with your luggage.

Mistakes we see when people plan their transport

The first is working everything out on Google Maps and adding nothing. The times the satnav gives are without stops, and in Morocco you stop: at a checkpoint, for tea, behind a lorry on the Tichka or because the scenery demands it.

The second is chaining connections with no margin. A bus that leaves half an hour late can make you miss a train. Between two connections, leave at least an hour.

The third is trying to reach Merzouga in a day from Marrakech by bus to save a night. You arrive in the small hours, sleep little and the next day you are worn out for the camel ride. We prefer a night in the Dades.

The fourth is forgetting Ramadan and the holidays. At the end of Ramadan and at Eid al-Adha half the country travels to see family, and trains and buses fill up. If your trip falls on those dates, buy your tickets early. We explain it in Ramadan in Morocco.

And the fifth is moving around too much. Every long transfer eats half a day. In a week, three or four bases are enough.

What getting around costs

Prices change, but as a guide, second-class trains and buses are cheap by European or American standards. A grand taxi costs little per seat, and a petit taxi a few euros per ride within the city. Hire cars and cars with a driver are the most expensive, but they are what takes you to the villages and valleys of the south. You'll find reference prices for the rest of the trip in how much it costs to travel to Morocco, and paperwork and basic information in the Morocco travel guide.

If you already have a rough route and aren't sure which legs to do by train and which by car, write to us with your dates and we'll suggest the combination that wastes the fewest hours. Or go straight to our private tours of Morocco, which already have the transport sorted.

Frequently asked questions

Can you get to Merzouga by train?

No. The ONCF network ends at Marrakech in the south and at Fez and Oujda in the east, and there is no line towards the Sahara. To reach the Erg Chebbi dunes you have overnight buses from Marrakech and Fez, shared minibus departures or a private car. From Marrakech it is about 550 kilometres and nine to ten hours on the road.

How long does the train from Tangier to Casablanca take?

Al Boraq, the high-speed train, does the journey in just over two hours, stopping at Kenitra and Rabat depending on the service. Before it opened in 2018 the same trip took almost twice as long. Timetables and frequency change with the season, so check the ONCF website before you finalise your plan.

Is the grand taxi a good way to get around?

For short hops between towns, yes: it is cheap and leaves as soon as it fills up. On long journeys it gets tiring, because you travel squeezed in, sometimes six passengers to a car, with no stops for photos. If you want to travel with just your group, you can pay for every seat and the taxi leaves straight away.

Which is more comfortable for the desert, the bus or a car with a driver?

The car with a driver, by a long way. The bus travels overnight or with few stops and drops you in Merzouga without you having seen Aït Ben Haddou or the Todra Gorge. With a driver the journey is split over two days, you stop wherever you like and you reach the camp in time for sunset.

Are there domestic flights worth taking?

A few. A flight from Fez to Marrakech or from Tangier to Marrakech saves a whole day in the car if you are not going via the desert. There are also flights to Ouarzazate, Zagora and Errachidia. Routes and frequencies change a lot from one year to the next, so check them before you plan your trip around a flight.

Recommended tours

Routes related to this article, with a local guide.

Camel caravan on the dunes under a blue sky
Sahara desertRecommended
3 days / 2 nightsFrom MarrakechPrivate or shared

3-Day Merzouga Desert Tour from Marrakech

Three private days from Marrakech to the Erg Chebbi dunes and back: Tichka, Aït Ben Haddou, Dades, Todra, a camel ride and a night in camp. The last day is a long one.

Caravan silhouettes against a pink sky
Private tours
7 days / 6 nightsFrom CasablancaPrivate

Casablanca, Rabat, Fez and Merzouga: a private week

A private week starting and ending in Casablanca: Rabat, Fez, a night in the Merzouga dunes, the Todra Gorge and Marrakech, with a Spanish-speaking driver.

Keep reading

Can't find the right trip?

Tell us your dates, how many people are travelling and what you'd like to see. Within 24 hours we'll send you a route and a price.