Le réseau ferroviaire marocain est de 1.900 Km dont 370 Km à voie double; 53% du linéaire étant électrifié et 900 Km sont exploités en traction diesel.
Ce réseau permet d'atteindre jusqu'à 160 Km/h sur les axes principaux. Il se présente sous forme d'un couloir reliant Marrakech au centre et Oujda à l'Est, avec des antennes desservant le port de Tanger au détroit, et les ports de Safi et Jorf-Lasfar sur l'Atlantique.
L’Office national des chemins de fer (ONCF) est un établissement public marocain qui est chargé d’exploiter le réseau ferroviaire du pays.
Les principales lignes de l'oncf sont :
- La ligne de l'Est : Casablanca, Rabat, Kenitra, Meknès, Fès, Oujda.
- La ligne du Nord : Casablanca-Tanger. Compter 6 h.
- La ligne de l'Ouest : Casablanca-Marrakech (240 km). Compter 3 h.