How To Get There
Daily direct flights from London to Marrakech (3hr 30mins)
BA,
Air France,
Air Maroc and low cost airlines
Atlas-Blue and
Easyjet. Taxi to Essaouira (2hr 30mins) - about £30. Buses from Marrakech to Essaouira - about 4 a day (2hr 30mins - 4 hrs) - about £4.
Sometimes charter flights or package holidays to Agadir can be a cheap option. Agadir is a 3 hr taxi ride from Essaouira.
For the more adventurous with more time in their hand you can to fly to Gibraltar - Monarch or BA. Return flights for around £50. From there you walk across the border into Spain and catch a bus or taxi around the bay to Algeciras to catch the ferry to Tanger. There are some ferries from Gibraltar but these are less regular.
This
page has all the ferry company routes and schedules. In Algeciras there are many offices to book tickets and many crossings per day. The cost is around £15 each way and takes from 70 mins to 2hr 30 min depending on the boat.
Arrival in Tanger is very easy with little hassle - despite what the guide books say. You must get your passport stamped on board the boat and complete an entry card.
Taxi to Tanger Ville Station to catch train to Marrakech. Train fares and schedules are
here. Train travel in Morocco is great - punctual, clean, cheap and simple. The journey to Marrakech takes around 8 hours, so you may want to break up the journey in Fez or Rabat. Ticket from Tanger-Marrakech is around £12 single. It is possible to do the trip overnight and book a couchette (bunk) on the train for an extra £6 and sleep all the way.
You can book your ticket from Marrakech-Essaouira. The final part of the journey is by Supratours coach - the company is owned by the rail company. These buses are timed to meet up with the trains. They are very comfortable and air-conditioned. This final part takes 2hr 30 mins.