There are 12 ways to get from Portree to Staffa by bus, plane, train, night train, car, car train, or car ferry
Select an option below to see step-by-step directions and to compare ticket prices and travel times in Rome2Rio's travel planner.
Bus to Inverness Dalcross Airport, fly to Milano Malpensa Airport, train
best- Take the bus from Somerled Square to Bus Station Stance 3bus
- Fly from Inverness Dalcross Airport (INV) to Milano Malpensa Airport (MXP)plane INV - MXP
- Take the train from Gallarate to Domodossolatrain
15h 27m€90–274Bus, train, night train
- Take the bus from Somerled Square to Bus Station Stance 3bus 917
- Take the train from Inverness to King's Crosstrain
- Take the train from London St. Pancras Int. to Amsterdam Centraaltrain
- Take the night train from Amsterdam Centraal to Zuerich Hbnighttrain Nj
- Take the train from Zürich HB to Domodossolatrain Ic
35h 30m€394–1,053Drive, Eurotunnel
- Drive from Portree to Folkestonecar
- Take the car train from Folkestone to Calais-Fréthuncartrain
- Drive from Calais-Fréthun to Staffacar
23h 18mBus, bus to Glasgow Airport, fly to Milano Malpensa Airport, train
- Take the bus from Somerled Square to Bus Stationbus
- Take the bus from Bus Station to Terminal Buildingbus
- Fly from Glasgow Airport (GLA) to Milano Malpensa Airport (MXP)plane GLA - MXP
- Take the train from Gallarate to Domodossolatrain
15h 57m€93–238Bus, bus to Glasgow Airport, fly to Geneva International Airport, train
- Take the bus from Somerled Square to Bus Stationbus
- Take the bus from Bus Station to Terminal Buildingbus
- Fly from Glasgow Airport (GLA) to Geneva International Airport (GVA)plane GLA - GVA
- Take the train from Genève-Aéroport to Brigtrain
17h 57m€134–338Bus, train, bus to Edinburgh Airport, fly to Milan Linate Airport
- Take the bus from Somerled Square to Bus Station Stance 3bus
- Take the train from Inverness to Perthtrain
- Take the bus from Perth station to Edinburgh Airportbus
- Fly from Edinburgh Airport (EDI) to Milan Linate Airport (LIN)plane EDI - LIN
- Take the train from Rho Fiera Milano to Domodossolatrain
18h 23mBus, train, bus to Edinburgh Airport, fly to Geneva International Airport
- Take the bus from Somerled Square to Bus Station Stance 3bus
- Take the train from Inverness to Perthtrain
- Take the bus from Perth station to Edinburgh Airportbus
- Fly from Edinburgh Airport (EDI) to Geneva International Airport (GVA)plane EDI - GVA
- Take the train from Genève-Aéroport to Brigtrain
19h 41mBus, train, bus to Edinburgh Airport, fly to Zurich Airport
- Take the bus from Somerled Square to Bus Station Stance 3bus
- Take the train from Inverness to Perthtrain
- Take the bus from Perth station to Edinburgh Airportbus
- Fly from Edinburgh Airport (EDI) to Zurich Airport (ZRH)plane EDI - ZRH
- Take the train from Zürich Flughafen to Brigtrain
19h 36mBus, train, bus to Edinburgh Airport, fly to Il Caravaggio International Airport
- Take the bus from Somerled Square to Bus Station Stance 3bus
- Take the train from Inverness to Perthtrain
- Take the bus from Perth station to Edinburgh Airportbus
- Fly from Edinburgh Airport (EDI) to Il Caravaggio International Airport (BGY)plane EDI - BGY
- Take the train from Milano Centrale to Domodossolatrain
19h 6mBus, train
- Take the bus from Somerled Square to Bus Station Stance 3bus 917
- Take the train from Inverness to King's Crosstrain
- Take the train from London St. Pancras Int. to Amsterdam Centraaltrain
- Take the train from Amsterdam Centraal to Zürich HBtrain
- Take the train from Zürich HB to Domodossolatrain Ic
36h 24m€404–1,083Bus, train, night train via London
- Take the bus from Somerled Square to Bus Station Stance 3bus 917
- Take the train from Inverness to London Eustontrain
- Take the train from London St. Pancras Int. to Amsterdam Centraaltrain
- Take the night train from Amsterdam Centraal to Zuerich Hbnighttrain Nj
- Take the train from Zürich HB to Domodossolatrain Ic
38h 38m€334–1,023Drive, car ferry
- Drive from Portree to Port of Dovercar
- Take the car ferry from Port of Dover to Calaiscarferry
- Drive from Calais to Staffacar
24h 19m€380–553
Inverness Dalcross Airport (INV) to Milano Malpensa Airport (MXP) flights
Questions & Answers
The cheapest way to get from Portree to Staffa is to bus and fly and train which costs €90 - €240 and takes 15h 57m.
The fastest way to get from Portree to Staffa is to bus and fly and train which takes 15h 27m and costs €85 - €280.
The distance between Portree and Staffa is 1917 km.
The best way to get from Portree to Staffa without a car is to bus and train and night train which takes 35h 30m and costs €390 - €1100.
It takes approximately 15h 27m to get from Portree to Staffa, including transfers.
Staffa is 1h ahead of Portree. It is currently 5:55 AM in Portree and 6:55 AM in Staffa.
There are 2317+ hotels available in Staffa.
What companies run services between Portree, Scotland and Staffa, Italy?
There is no direct connection from Portree to Staffa. However, you can take the bus to Bus Station Stance 3, walk to Inverness, take the train to Inverness Airport Station, walk to Inverness Airport station, take the bus to Terminal Building, walk to Inverness Dalcross Airport (INV) airport, fly to Milano Malpensa Airport (MXP), walk to Malpensa Aeroporto T1, take the train to Gallarate, take the train to Domodossola, walk to Domodossola - Cimitero, then take the line 4 bus to Pecetto. Alternatively, you can take a bus from Somerled Square to Pecetto via Bus Station Stance 3, Inverness, London Kings Cross, London St. Pancras Int., Amsterdam Centraal, Amsterdam Centraal, Zuerich Hb, Zürich HB, Domodossola, and Domodossola - Cimitero in around 35h 30m.
- Website
- easyjet.com
Flights from Inverness Dalcross Airport to Milano Malpensa Airport via London Gatwick
- Ave. Duration
- 5h 25m
- When
- Sunday
- Estimated price
- €50–210
Flights from Glasgow Airport to Geneva International Airport
- Ave. Duration
- 2h 15m
- When
- Saturday and Sunday
- Estimated price
- €35–190
Flights from Glasgow Airport to Geneva International Airport via Bristol
- Ave. Duration
- 4h 26m
- When
- Monday, Thursday, and Saturday
- Estimated price
- €35–190
Flights from Glasgow Airport to Geneva International Airport via Belfast (Aldergrove)
- Ave. Duration
- 4h 15m
- When
- Saturday
- Estimated price
- €35–190
Flights from Glasgow Airport to Geneva International Airport via London Luton
- Ave. Duration
- 4h 46m
- When
- Thursday, Friday, and Sunday
- Estimated price
- €35–190
Flights from Glasgow Airport to Geneva International Airport via Birmingham
- Ave. Duration
- 4h 50m
- When
- Saturday
- Estimated price
- €35–190
Flights from Edinburgh Airport to Milan Linate Airport
- Ave. Duration
- 2h 25m
- When
- Every day
- Estimated price
- €60–190
Flights from Edinburgh Airport to Milan Linate Airport via Birmingham
- Ave. Duration
- 4h 20m
- When
- Wednesday and Saturday
- Estimated price
- €60–190
Flights from Edinburgh Airport to Geneva International Airport
- Ave. Duration
- 2h 15m
- When
- Every day
- Estimated price
- €45–140
Flights from Edinburgh Airport to Geneva International Airport via Birmingham
- Ave. Duration
- 3h 40m
- When
- Thursday and Friday
- Estimated price
- €45–140
Flights from Edinburgh Airport to Geneva International Airport via Bristol
- Ave. Duration
- 3h 45m
- When
- Thursday to Saturday
- Estimated price
- €45–140
Flights from Edinburgh Airport to Geneva International Airport via London Luton
- Ave. Duration
- 3h 55m
- When
- Saturday and Sunday
- Estimated price
- €45–140
Flights from Edinburgh Airport to Zurich Airport
- Ave. Duration
- 2h 5m
- When
- Monday, Wednesday, and Saturday
- Estimated price
- €45–180
- Website
- klm.com
Flights from Glasgow Airport to Geneva International Airport via Amsterdam Schiphol
- Ave. Duration
- 4h 26m
- When
- Every day
- Estimated price
- €55–300
Flights from Edinburgh Airport to Milan Linate Airport via Amsterdam Schiphol
- Ave. Duration
- 4h 45m
- When
- Every day
- Estimated price
- €60–320
Flights from Edinburgh Airport to Geneva International Airport via Amsterdam Schiphol
- Ave. Duration
- 4h 21m
- When
- Every day
- Estimated price
- €55–310
Flights from Edinburgh Airport to Zurich Airport via Amsterdam Schiphol
- Ave. Duration
- 4h 25m
- When
- Every day
- Estimated price
- €50–290
- Website
- ryanair.com
Flights from Inverness Dalcross Airport to Milano Malpensa Airport via Manchester
- Ave. Duration
- 4h 30m
- When
- Saturday
- Estimated price
- €50–210
Flights from Edinburgh Airport to Il Caravaggio International Airport
- Ave. Duration
- 2h 34m
- When
- Monday, Tuesday, Wednesday, Friday, Saturday, and Sunday
- Estimated price
- €40–160
Flights from Edinburgh Airport to Il Caravaggio International Airport via Charleroi
- Ave. Duration
- 4h 20m
- When
- Friday and Saturday
- Estimated price
- €40–160
- Website
- flyulendo.com
Flights from Inverness Dalcross Airport to Milano Malpensa Airport via London Luton
- Ave. Duration
- 6h 50m
- When
- Monday and Tuesday
- Estimated price
- €40–200
Flights from Glasgow Airport to Milano Malpensa Airport
- Ave. Duration
- 2h 25m
- When
- Monday, Wednesday, and Friday
- Estimated price
- €25–140
- Website
- lufthansa.com
Flights from Glasgow Airport to Milano Malpensa Airport via Frankfurt
- Ave. Duration
- 4h 5m
- When
- Thursday
- Estimated price
- €65–270
Flights from Edinburgh Airport to Milan Linate Airport via Frankfurt
- Ave. Duration
- 4h 17m
- When
- Every day
- Estimated price
- €100–170
- Website
- brusselsairlines.com
Flights from Edinburgh Airport to Milan Linate Airport via Brussels
- Ave. Duration
- 5h
- When
- Friday
- Estimated price
- €65–260
Flights from Edinburgh Airport to Geneva International Airport via Brussels
- Ave. Duration
- 3h 45m
- When
- Friday
- Estimated price
- €65–250
Flights from Edinburgh Airport to Zurich Airport via Brussels
- Ave. Duration
- 4h 30m
- When
- Friday
- Estimated price
- €60–240
- Website
- jet2.com
Flights from Glasgow Airport to Geneva International Airport
- Ave. Duration
- 2h 25m
- When
- Saturday
- Estimated price
- €45–220
Flights from Edinburgh Airport to Geneva International Airport
- Ave. Duration
- 2h 30m
- When
- Saturday and Sunday
- Estimated price
- €45–150
- Website
- britishairways.com
Flights from Inverness Dalcross Airport to Milano Malpensa Airport via London Heathrow
- Ave. Duration
- 4h 50m
- When
- Friday
- Estimated price
- €70–340
- Website
- flyedelweiss.com
Flights from Edinburgh Airport to Zurich Airport
- Ave. Duration
- 2h 15m
- When
- Monday and Saturday
- Estimated price
- €50–290
- Phone
- +39 02 7249 4494
- my-link@trenord.it
- Website
- trenord.it
Train from Gallarate to Domodossola
- Ave. Duration
- 1h 1m
- Frequency
- Every 2 hours
- Estimated price
- €6–8
- Website
- https://www.trenord.it/en/
Train from Rho Fiera Milano to Domodossola
- Ave. Duration
- 1h 26m
- Frequency
- Every 2 hours
- Estimated price
- €6–8
- Website
- https://www.trenord.it/en/
Train from Milano Centrale to Domodossola
- Ave. Duration
- 1h 39m
- Frequency
- Every 2 hours
- Estimated price
- €8–11
- Website
- https://www.trenord.it/en/
- Phone
- +39.06.5210550
- Website
- trenitalia.com
Train from Gallarate to Domodossola
- Ave. Duration
- 1h 40m
- Frequency
- Every 4 hours
- Estimated price
- €9
- Website
- https://www.trenitalia.com/en.html
Train from Rho Fiera Milano to Domodossola
- Ave. Duration
- 2h 4m
- Frequency
- Every 4 hours
- Estimated price
- €10–12
- Website
- https://www.trenitalia.com/en.html
- Phone
- +44 345 722 5333
- customers@lner.co.uk
- Website
- lner.co.uk
Train from Inverness to King's Cross
- Ave. Duration
- 8h 4m
- Frequency
- Once daily
- Estimated price
- €130–150
- Website
- https://www.lner.co.uk/
Train from Inverness to Perth
- Ave. Duration
- 2h 2m
- Frequency
- Once daily
- Estimated price
- €13–20
- Website
- https://www.lner.co.uk/
- Phone
- +31 30 751 5155
- Website
- ns.nl
Train from London St. Pancras Int. to Amsterdam Centraal
- Ave. Duration
- 4h 4m
- Frequency
- 4 times a day
- Estimated price
- €120–280
- Website
- https://www.ns.nl/en
Night train from Amsterdam Centraal to Zuerich Hb
- Ave. Duration
- 11h 4m
- Frequency
- Once daily
- Estimated price
- €120–440
- Website
- https://www.ns.nl/en
- 2nd Class
- €120–190
- 1st Class
- €260–440
Train from Amsterdam Centraal to Zürich HB
- Ave. Duration
- 11h 50m
- Frequency
- Once daily
- Estimated price
- €130–470
- Website
- https://www.ns.nl/en
- 2nd Class
- €130–200
- 1st Class
- €280–470
- Phone
- +44 343 218 6186
- Website
- eurostar.com
Train from London St. Pancras Int. to Amsterdam Centraal
- Ave. Duration
- 4h 16m
- Frequency
- Twice daily
- Estimated price
- €65–310
- Website
- https://www.eurostar.com/rw-en
- Phone
- +41 848 446 688
- Website
- sbb.ch
Train from Zürich HB to Domodossola
- Ave. Duration
- 2h 29m
- Frequency
- Once a week
- Estimated price
- €55–120
- Website
- https://www.sbb.ch/en
Train from Genève-Aéroport to Brig
- Ave. Duration
- 2h 37m
- Frequency
- Hourly
- Estimated price
- €35–70
- Website
- https://www.sbb.ch/en
Train from Zürich Flughafen to Brig
- Ave. Duration
- 2h 28m
- Frequency
- Hourly
- Estimated price
- €55–110
- Website
- https://www.sbb.ch/en
- Phone
- +44 (0) 8443 35 35 35
- Website
- leshuttle.com
Car train from Folkestone to Calais-Fréthun
- Ave. Duration
- 35 min
- Frequency
- Hourly
- Website
- https://www.leshuttle.com/uk-en
- Phone
- +44 344 811 0141
- Website
- scotrail.co.uk
Train from Inverness to Perth
- Ave. Duration
- 2h 23m
- Frequency
- Every 3 hours
- Estimated price
- €19–45
- Website
- https://www.scotrail.co.uk/
- Phone
- +44 330 060 0500
- enquiry@sleeper.scot
- Website
- sleeper.scot
Train from Inverness to Perth
- Ave. Duration
- 2h 38m
- Frequency
- 6 times a week
- Estimated price
- €70–90
- Website
- https://www.sleeper.scot/
- Sleeper Berth Classic
- €240–260
- Sleeper Seat
- €70–90
- Sleeper Berth Club Solo
- €280–330
Train from Inverness to London Euston
- Ave. Duration
- 11h 2m
- Frequency
- 6 times a week
- Estimated price
- €70–120
- Website
- https://www.sleeper.scot/
- Phone
- +39 06 68475475
- ufficiogruppi@trenitalia.it
- Website
- trenitalia.com
Train from Rho Fiera Milano to Domodossola
- Ave. Duration
- 1h 24m
- Frequency
- 6 times a week
- Estimated price
- €17–28
- Website
- https://www.trenitalia.com/en.html
- 1st Class
- €17–24
- 2nd Class
- €21–28
- Phone
- 0141 352 4444
- info@citylink.co.uk
- Website
- citylink.co.uk
Bus from Somerled Square to Bus Station Stance 3
- Ave. Duration
- 3h 20m
- Frequency
- Every 4 hours
- Estimated price
- €20–29
- Website
- https://www.citylink.co.uk/
Bus from Somerled Square to Bus Station
- Ave. Duration
- 3h 1m
- Frequency
- Every 4 hours
- Estimated price
- €20–28
- Website
- https://www.citylink.co.uk/
Bus from Bus Station to Terminal Building
- Ave. Duration
- 2h 54m
- Frequency
- 5 times a day
- Estimated price
- €18–26
- Website
- https://www.citylink.co.uk/
- Phone
- +44 (0)131 510 4007
- ride@ember.to
- Website
- ember.to
Bus from Bus Station to Terminal Building
- Ave. Duration
- 2h 41m
- Frequency
- 4 times a day
- Estimated price
- €1–60
- Website
- https://www.ember.to/
Bus from Perth station to Edinburgh Airport
- Ave. Duration
- 59 min
- Frequency
- Every 4 hours
- Website
- https://www.ember.to/
- Phone
- +353 818 300 400
- info@irishferries.com
- Website
- irishferries.com
Car ferry from Port of Dover to Calais
- Ave. Duration
- 1h 30m
- Frequency
- Every 3 hours
- Estimated price
- €35–45
- Website
- https://www.irishferries.com/uk-en/Travel-to-Ireland
- Car
- €75–190
- On Foot
- €35–45
Want to know more about travelling around Italy
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
Italy Travel Guides
Read the travel guide
Travelling to the UK: What do I need to know?
Read the travel guide
5 delightfully under-the-radar French towns you need to visit
Read the travel guide



















































