Marrakech and Fes are roughly 8-9 hours apart by road, and there are several ways to make the journey.
By train: The most comfortable direct option, taking around 7-8 hours with a change in Casablanca. Trains are reliable and scenic but long.
By flight: The fastest option at under an hour, though you'll miss everything in between and need to budget for airport transfers on both ends.
By private tour via the desert: Instead of a direct transfer, most travelers turn the journey into the highlight of their trip — a 3 to 4-day route from Marrakech to Fes via the Sahara Desert, stopping at Ait Ben Haddou, the Dades Valley and a night camel trekking in Merzouga before arriving in Fes.
If your schedule allows, the desert route is by far the most memorable way to connect the two cities — you see far more of Morocco than a direct train or flight ever could, for a similar total travel time.
By train: The most comfortable direct option, taking around 7-8 hours with a change in Casablanca. Trains are reliable and scenic but long.
By flight: The fastest option at under an hour, though you'll miss everything in between and need to budget for airport transfers on both ends.
By private tour via the desert: Instead of a direct transfer, most travelers turn the journey into the highlight of their trip — a 3 to 4-day route from Marrakech to Fes via the Sahara Desert, stopping at Ait Ben Haddou, the Dades Valley and a night camel trekking in Merzouga before arriving in Fes.
If your schedule allows, the desert route is by far the most memorable way to connect the two cities — you see far more of Morocco than a direct train or flight ever could, for a similar total travel time.