Rome2Rio

How to get fromPerth to Mallaigby bus, train or car

Find Transport to Mallaig

See all options

There are 4 ways to get from Perth to Mallaig by bus, train, or car

Select an option below to see step-by-step directions and to compare ticket prices and travel times in Rome2Rio's travel planner.

  1. Bus

    best
    1. Take the bus from Park and Ride to Bus Stationbus913
    2. Take the bus from Fort William Bus Station to Ferry Terminalbus500
    6h 29m
    £23–36
  2. Train

    1. Take the train from Perth to Glasgow Queen Streettrain
    2. Take the train from Glasgow Queen Street to Crianlarichtrain
    3. Take the train from Crianlarich to Mallaigtrain
    8h 23m
    £32–96
  3. Drive 140.9 mi

    1. Drive from Perth to Mallaigcar140.9 mi
    2h 45m
    £35–51
  4. Bus, train

    1. Take the bus from Hill Street to Bus Stationbus913
    2. Take the train from Fort William to MallaigtrainCrianlarich - Mallaig / ...
    6h 47m
    £26–425

Perth to Mallaig by bus

Calendar10Weekly Buses
Duration6h 29mAverage Duration
Ticket£23Cheapest Price
See schedules

Questions & Answers

What companies run services between Perth, Scotland and Mallaig, Highland, Scotland?

You can take a bus from South Methven Street to Ferry Terminal via Lamberkine Drive, Park and Ride, Bus Station, and Fort William Bus Station in around 6h 29m. Alternatively, you can take a train from Perth to Mallaig via Glasgow Queen Street and Crianlarich in around 8h 23m.

Transport is disrupted due to the Russia-Ukraine war. Read more

Train operators
Bus operators

Want to know more about travelling around United Kingdom

Rome2Rio's Travel Guide series provide vital information for the global traveller. Filled with useful and timely travel information, the guides answer all the hard questions - such as 'How do I buy a ticket?', 'Should I book online before I travel? ', 'How much should I expect to pay?', 'Do the trains and buses have Wifi?' - to help you get the most out of your next trip.

Related travel guides

More Questions & Answers