This post is to detail the Supratour coach service linking Chefchaouen with the main train service from Casablanca to Tanger. Rather than go all the way to Tanger then take buses/taxis from there to Chefchouen, you can get off the train a couple of hours earlier at Souk El Arbaa.
The 1330 service from Casa Voyageurs stops in Rabat at 1437, then reaches Souk El Arbaa at 1612, before finishing up at Tanger at 1830. The Supratour coach leaves Souk El Arbaa at 1630, goes via Ouezanne and I would estimate it arrives Chefchaouen about 1900.
There's a return coach leaves Chefchaouen at 0830 which I imagine is intended to link to the 1116 train from Souk El Arbaa, arriving Casa Voyageurs at 1425. The 1455 train from Casa Voyageurs then reaches Marrakech at 1830. So ten hours from Chefchaouen to Marrakech.
In the link below, 'correspondence' means to change trains/buses: supratours.ma/en/News/A-new-line-in-correspo…