Four trains a day (one on Sunday in winter, two in summer) run from Glasgow Queen Street to Mallaig, taking 5 hours 30 mins. These trains split at Crianlarich, with part of them going to Oban, so you need to be in the right section. The first train leaves at 08:20 so the earliest you can reach Mallaig is 13:30. The last train south is around 18:00 to reach Queen Street by midnight. Trains and ferries are sometimes held for connections . . . and then again, sometimes not.
The Caledonian Sleeper leaves London Euston nightly (not Sat) at 21:00, reaching Glasgow Queen Street shortly before 06:00 and Fort William by 10:00. You then have to wait a couple of hours for the next train from Queen Street to continue to Mallaig, there isn't an earlier bus. The 18:00 from Mallaig connects with the southbound sleeper from Fort William towards 20:00, to reach Euston for 08:00.
The railway route crosses impressive highland scenery, spectacular in fine weather and grim at other times. You pass Loch Lomond, bleak Rannoch Moor, Fort William beneath Ben Nevis, then cross the Glenfinnan Viaduct, a hundred-year-old stone arched rail bridge. From up there you don't see much of the viaduct itself, but there are views down Loch Shiel to the left.
The Jacobite steam train runs April-Oct between Fort William and Mallaig. It's a six-hour excursion (depart 10:15, return by 16:00) staying two hours in Mallaig. An adult day trip is £38 standard, £60 first class, child £21 / £33; single tickets (standard only) are £32 adult, £19 child. Mid-May to mid-Sept there's also an afternoon train (14:30 - 20:30), so you could have six hours in Mallaig, time for a boat trip to the Small Isles, by going in the morning and returning on the afternoon excursion. Trains also stop at Glenfinnan for the obligatory photo of the viaduct, and by request at Arisaig. The morning excursion connects with the Caledonian Sleeper from London. In previous years some of them started from Glasgow or Edinburgh, but they're don't do so in 2019.
Under your own steam, using the regular train service, you can day trip here from Fort William leaving at 08:30 or 12:00 and setting off back around 16:00 or 18:00, for only £15 adult return.
In Mallaig the railway station is close to the ferry terminal.
Scottish Citylink buses run from Glasgow Buchanan Street to Portree on Skye; get off at Fort William (3 hours) and change to the Shiel Bus. In summer the Citylink buses run daily every couple of hours, but only half of them have a speedy onward connection to Mallaig. So from Glasgow buy a through-ticket: the connection will usually be held. The first bus north from Glasgow is at 10:00 arriving for 15:00, the last bus south from Mallaig is around 15:30 for 22:00. Scottish Citylink and Shiel Buses also run between Inverness and Fort William taking two hours, 4-6 a day in summer.
Between Fort William and Mallaig, Shiel Bus 500 takes 90 mins, adult return £8. In summer it runs four times a day Monday-Friday, but only once on Saturday and Sunday. Sit on the right for views of Glenfinnan Viaduct. Bus 501 also runs three times a day between Mallaig and Arisaig.
The bus stop in Mallaig varies. A couple of buses connect with the ferry to Armadale in Skye, and run direct to the ferry terminal. The others stop outside the Bank (near the railway station) before wandering off to the housing estate at Mallaigvaig.
Reaching Mallaig by road first involves reaching Fort William then following A830 west (past Glenfinnan) for the last 43 miles.
The route from Glasgow is by A82 north past Loch Lomond, Crianlarich and Glencoe. (From Glasgow Airport follow M8 west to cross the Erskine Bridge and join A82.) There's a choice of routes from Edinburgh; it's probably easiest to follow M9 past Stirling, then A84 via Callander and Loch Earn to join A85, which joins A82 at Crianlarich. (From Edinburgh Airport turn west to come onto M9.) From Inverness it's a straight run south on A82 past Loch Ness to Fort William.
Reckon to average at best 50 mph (80 kph). You'll zip along the motorways but the A-roads are twisty and busy, with few opportunities to overtake safely.
Caledonian MacBrayne ("CalMac") car ferries run from Mallaig to:
- Armadale on Skye, 45 mins. In summer Mon-Sat there are nine sailings, Sunday six. In winter there are 2 or 3 Mon-Sat and just one on Sunday.
- Lochboisdale on South Uist, 3 hours 30 mins, once daily in summer. In winter it's usually once on Wed, Sat & Sun, but no sailings for most of Nov or Feb. When this ferry's not running, reach South Uist via Oban.
- the Small Isles of Rum, Eigg, Muck and Canna. Ferries sail daily throughout the year, but visit different islands on different days, so depending on route the crossing takes 2-4 hours. See Small Isles page for the usual schedule: you can also make trips between the islands, but you'll need a spreadsheet and strong coffee.
- Although this is a car ferry, don't take a car to the Small Isles, use the free parking lot next to the ferry terminal.
Mallaig is a small village, everything is within walking distance.
- Mallaig Heritage Centre (located next to the train station). Tells the story of Mallaig and the surrounding area.
- Bruce Watt Cruises. run boats to Inverie on the Knoydart Peninsula. Go there and back in a day, great views of the surrounding area from the boat.
Mallaig has a few souvenir shops, two pubs, a tourist information centre and Spar and Co-op supermarkets. There is also a post office, chemist shop and ships chandlers.
There are many other fish restaurants and other places to eat in the village.
- Fishmarket Restaurant (in the middle of the village). Serving fresh fish and some non-fish dishes. Very nice food.
- Chlachain Inn. does very nice food at reasonable prices. Their chips are great!
The Chlachain Inn (above) has an outstanding collection of single malt whiskys.
There are many places to stay in Mallaig, though some are only open in the peak summer months.
- West Highland Hotel. At the large end of the scale, is a descendant of the original Station Hotel that was built to coincide with the coming of the West Highland Railway in 1901.
- There are many B&Bs at the cheaper end of the scale. One example
- Springbank Guest House. family-run a cheap and cheerful place just around the bay from the train station & ferry port.
- Mallaig Backpackers Lodge, Station Road, PH41 4PU, ☎ . £13 (dorm).
- See the pretty coastline between Arisaig and Morar, especially the "Back of Keppoch". You'll need a car.
- See Glenfinnan Viaduct on the route east to Fort William.
- See Tarbet, a tiny hamlet on the banks of Loch Nevis. It's also near the banks of Loch Morar, close enough to drag a boat from one loch to the other. "Tarbert" is the Viking term for "drag boat" so there are several other places in Scotland with the same or similar name - Satnav users beware. No roads lead to the hamlet. A ferry from Mallaig/Knoydart peninsula makes regular visits. It can also be reached by footpath from Bracorina (several hours minimum).