Train Travel in Morocco: ONCF and Al Boraq Tourist Guide
Morocco's rail network, run by ONCF, is one of Africa's best and the most comfortable way to link the major cities along the Atlantic axis. Two services coexist: Al Boraq, the Tangier-Casablanca high-speed line, and Al Atlas, the classic network serving the rest of the country.
Al Boraq links Tangier to Casa Voyageurs in about 2h10 at up to 320 km/h, with roughly hourly departures: expect 149 to 224 MAD in second class and around 243 MAD in first, on dynamic pricing. For the rest of the country, the classic Al Atlas network serves Marrakech (~2h40 to 3h20 from Casablanca, around 98 MAD in second), Fes (~3h50, 130-260 MAD) and Meknes. Marrakech is not on the high-speed line. Between Fes and Marrakech there is no direct train: expect a change at Casa Voyageurs and 6 to 7h30 of travel, for around 204 MAD in second class and 340 MAD in first. The network reaches neither the desert, nor the Atlas valleys, nor Chefchaouen, nor Essaouira — plan on bus, grand taxi or car for those. Book on the ONCF site or app, up to three months ahead.
Al Boraq and Al Atlas: two different networks
This is the distinction travellers miss most often. Al Boraq is the high-speed line, and it covers a single axis: Tangier ↔ Casablanca. Everything else in the country runs on Al Atlas, the classic network — comfortable and reliable, but nothing to do with the 320 km/h of the high-speed line.
In practice: landing in Tangier and wanting to reach Marrakech does not happen "by high-speed train". You take Al Boraq to Casa Voyageurs, then an Al Atlas service on to Marrakech.
Real journey times and fares
| Route | Service | Duration | Indicative 2nd class fare |
|---|---|---|---|
| Tangier → Casablanca | Al Boraq | ~2h10 | 149-224 MAD |
| Casablanca → Marrakech | Al Atlas | ~2h40-3h20 | ~98 MAD |
| Casablanca → Fes | Al Atlas | ~3h50 | 130-260 MAD |
| Fes → Marrakech | Al Atlas + change | 6h-7h30 | ~204 MAD |
Fes-Marrakech: the itinerary trap
There is no direct train between Fes and Marrakech. The journey requires a change at Casa Voyageurs and takes 6 to 7h30 in total, for around 204 MAD in second class and 340 MAD in first. It's doable, but it's a full travel day: many itineraries are better off inserting a night in Casablanca or Rabat rather than pushing straight through.
First or second class?
Second class is perfectly comfortable across the network: decent seats, air conditioning. Its limit is crowding at peak hours and weekends, when it fills up.
First class brings two concrete things: an assigned seat — so no risk of standing on a busy train — and a quieter carriage. On long runs (Fes-Marrakech, Casablanca-Fes) or in high season, the price gap is justified. On Al Boraq, where all seats are assigned anyway, second class is plenty.
Booking an ONCF ticket
Booking a train ticket in Morocco: 5 steps
Applies to Al Boraq and to the classic Al Atlas network alike.
- Check whether your route is Al Boraq or Al AtlasOnly the Tangier-Casablanca axis is high speed. Marrakech, Fes, Meknes and El Jadida are served by the classic Al Atlas network. This distinction drives both duration and price.
- Book early on dynamically priced routesAl Boraq tickets can open up to three months ahead and their price rises with demand. Morning and end-of-day departures go fast. On the classic network the spread is smaller, but weekends fill up.
- Choose your class by journey length and crowdingSecond class is enough on Al Boraq and on short hops. Prefer first class on long runs or in high season: the assigned seat means you won't stand on a full train.
- Buy online, in the app, or at the counterThe ONCF site and app take card payment. Station counters remain an option, including on the day, but you risk the best fares or the remaining seats being gone.
- Arrive early and find your carriageAllow a margin at the station, especially at Casa Voyageurs, the country's main interchange. On tickets with an assigned seat, check the carriage number shown on the platform before the train pulls in.
Get online before you land· Airalo eSIM
Being connected makes journeys concretely easier: live times, digital tickets and offline maps. See our Morocco eSIM guide.
The train in a multi-city itinerary
Rail spares you Moroccan city driving, which is a serious argument if you're weighing it against car hire. It covers Tangier, Rabat, Casablanca, Fes, Meknes, Marrakech and El Jadida well.
Its limit is clear: it serves neither the desert, nor the Atlas valleys, nor Chefchaouen, nor Essaouira. For those you switch to bus, grand taxi or car — see getting around Morocco and renting a car in Morocco.
One frequent practical case: at Casablanca airport the ONCF station is inside the terminal, on level -1 of Terminal 1, which makes it possible to reach Rabat, Tangier or Marrakech the same day — detailed in Casablanca airport arrival.
Mistakes to avoid
To continue planning
- Getting around Morocco
- Casablanca airport arrival
- Imperial cities itinerary
- Northern Morocco itinerary
Bookable excursions from each stop are sorted by city in activities in Morocco.
Compare accommodation· Booking.com
See available activities· GetYourGuide






