Dans la moitié nord du Maroc, le chemin de fer offre en définitive au visiteur la meilleure forme de transport en commun. Les grandes lignes relient Tanger (et maintenant Tanger Med), Fès, Oujda, Nador, Rabat, Casablanca (son aéroport est également desservi) et Marrakech. Supratours, une filiale de l'ONCF (Office National des Chemins de Fer), dessert en car les destinations non connectées au réseau ferré (vers Agadir, le grand sud).