There are 12 ways to get from Milan to Haparanda by train, plane, bus, night train, taxi, car, or car train
Select an option below to see step-by-step directions and to compare ticket prices and travel times in Rome2Rio's travel planner.
Train to Milano Malpensa Airport, fly to Kemi-Tornio Airport
best- Take the train from Milano Porta Garibaldi to Malpensa Aeroporto T1train
- Fly from Milano Malpensa Airport (MXP) to Kemi-Tornio Airport (KEM)plane MXP - KEM
11h 47mkr 2,193–6,129Bus to Il Caravaggio International Airport, fly to Kemi-Tornio Airport
cheapest- Take the bus from Piazza Luigi di Savoia to Milan Bergamo Orio al Serio Airportbus
- Fly from Il Caravaggio International Airport (BGY) to Kemi-Tornio Airport (KEM)plane BGY - KEM
10h 24mkr 1,200–3,942Train, bus via Berlin
- Take the train from Milano Centrale to Brigtrain Ec
- Take the train from Brig to Berlin Ostbahnhoftrain Ice
- Take the train from Berlin Hbf to Stockholm Centralstationtrain
- Take the bus from Stockholm, Cityterminalen to Torniobus
46h 1mkr 7,769–18,350Train, bus
- Take the train from Milano Centrale to Verona Porta Nuovatrain Fr
- Take the bus from Verona - Bus Stop to Zagreb - Bus Stationbus
- Take the bus from Zagreb, Autobusni Kolodvor to Stockholm, Cityterminalenbus
- Take the train from Stockholm Centralstation to Boden C/Resecentrumtrain 94
- Take the train from Boden C/Resecentrum to Haparanda stationtrain
2d 4hTrain, night train
- Take the train from Milano Centrale to Zuerich Hbtrain Ec
- Take the night train from Zuerich Hb to Hamburg-Harburgnighttrain Nj
- Take the train from Hamburg-Harburg to Stockholm Centralstationtrain 344
- Take the night train from Stockholm Centralstation to Luleå Centralstationnighttrain
- Take the train from Luleå Centralstation to Haparanda stationtrain
46h 9mkr 4,781–8,391Fly Milan Linate Airport to Luleå/Kallax Airport, taxi
- Fly from Milan Linate Airport (LIN) to Luleå/Kallax Airport (LLA)plane LIN - LLA
- Take the taxi from Luleå Airport to Haparanda Tornio resecentrumtaxi
9h 52mkr 2,631–5,764Train to Milano Malpensa Airport, fly to Luleå/Kallax Airport, taxi
- Take the train from Milano Porta Garibaldi to Malpensa Aeroporto T1train
- Fly from Milano Malpensa Airport (MXP) to Luleå/Kallax Airport (LLA)plane MXP - LLA
- Take the taxi from Luleå Airport to Haparanda Tornio resecentrumtaxi
10h 53mkr 1,258–4,799Train to Milano Malpensa Airport, fly to Oulu Airport, train
- Take the train from Milano Porta Garibaldi to Malpensa Aeroporto T1train
- Fly from Milano Malpensa Airport (MXP) to Oulu Airport (OUL)plane MXP - OUL
- Take the train from Oulu to Haaparanta pohjoinentrain
11h 19mkr 2,165–5,900Train, bus #2
- Take the train from Milano Centrale to Venezia Mestretrain Fr
- Take the train from Venezia Mestre to Wien Hbftrain Rjx
- Take the train from Wien Hbf to Warszawa Zachodniatrain Ec
- Take the bus from Warsaw, Bus Station West to Kemi, Bus Stationbus
2d 4hkr 4,688–8,425Bus
- Take the bus from Milano, Autostazione Lampugnano to Krakow, MDA Bus Stationbus N456
- Take the bus from Krakow, MDA Bus Station to Kemi, Bus Stationbus N1207
2d 9hkr 3,262–5,335Drive 3,169 km
- Drive from Milan to Haparandacar 3,169 km
32h 33mkr 5,670–8,190Drive, car train
- Drive from Milan to Lörrach Hbfcar
- Take the car train from Lörrach Hbf to Lüneburgcartrain
- Drive from Lüneburg to Haparandacar
36h 21mkr 5,389–7,651
Milan to Haparanda by train and night train
Questions & Answers
The cheapest way to get from Milan to Haparanda is to bus and fly which costs 1200 kr - 4000 kr and takes 10h 24m.
The fastest way to get from Milan to Haparanda is to fly and taxi which takes 9h 52m and costs 2600 kr - 6000 kr.
No, there is no direct bus from Milan to Haparanda. However, there are services departing from Milano, Autostazione Lampugnano and arriving at Pääovi via Krakow, MDA Bus Station and Kemi rautatieasema. The journey, including transfers, takes approximately 2 days 9h.
No, there is no direct train from Milan to Haparanda station. However, there are services departing from Milano Centrale and arriving at Haparanda station via Zuerich Hb, Hamburg-Harburg, Stockholm Centralstation and Luleå Centralstation. The journey, including transfers, takes approximately 46h 9m.
The distance between Milan and Haparanda is 2507 km. The road distance is 3169 km.
The best way to get from Milan to Haparanda without a car is to train and bus via Berlin which takes 46h 1m and costs 7500 kr - 19000 kr.
It takes approximately 11h 47m to get from Milan to Haparanda, including transfers.
Milan to Haparanda bus services, operated by FlixBus, depart from Milano, Autostazione Lampugnano station.
Milan to Haparanda train services, operated by Trenitalia EuroCity, depart from Milano Centrale station.
Milan to Haparanda bus services, operated by FlixBus, arrive at Krakow, MDA Bus Station.
What companies run services between Milan, Italy and Haparanda, Sweden?
You can take a bus from Milano, Autostazione Lampugnano to Pääovi via Krakow, MDA Bus Station, Kemi, Bus Station, and Kemi rautatieasema in around 2d 9h.
- Website
- finnair.com
Flights from Milano Malpensa Airport to Kemi-Tornio Airport via Helsinki
- Ave. Duration
- 11h 38m
- When
- Monday, Tuesday, Sunday, and Wednesday
- Estimated price
- kr 2,100–6,000
Flights from Milano Malpensa Airport to Oulu Airport via Helsinki
- Ave. Duration
- 6h 52m
- When
- Every day
- Estimated price
- kr 1,900–5,500
Flights from Il Caravaggio International Airport to Kemi-Tornio Airport via Helsinki
- Ave. Duration
- 9h 50m
- When
- Sunday
- Estimated price
- kr 1,100–4,900
Flights from Il Caravaggio International Airport to Kemi-Tornio Airport via Copenhagen, Helsinki
- Ave. Duration
- 8h 50m
- When
- Tuesday, Sunday, and Monday
- Estimated price
- kr 1,100–5,000
Flights from Il Caravaggio International Airport to Kemi-Tornio Airport via Krakow, Helsinki
- Ave. Duration
- 10h 2m
- When
- Monday and Sunday
- Estimated price
- kr 2,500–7,000
Flights from Il Caravaggio International Airport to Kemi-Tornio Airport via Stockholm, Helsinki
- Ave. Duration
- 8h 35m
- When
- Monday, Tuesday, Thursday, Friday, and Sunday
- Estimated price
- kr 1,100–3,600
Flights from Il Caravaggio International Airport to Kemi-Tornio Airport via Prague, Helsinki
- Ave. Duration
- 9h 57m
- When
- Thursday, Friday, Sunday, and Monday
- Estimated price
- kr 2,400–6,500
Flights from Il Caravaggio International Airport to Kemi-Tornio Airport via Berlin Brandenburg, Helsinki
- Ave. Duration
- 8h 50m
- When
- Monday, Tuesday, Thursday, Friday, and Sunday
- Estimated price
- kr 2,400–6,500
Flights from Il Caravaggio International Airport to Kemi-Tornio Airport via Warsaw Chopin, Helsinki
- Ave. Duration
- 10h 25m
- When
- Monday and Tuesday
- Estimated price
- kr 1,000–3,700
- Website
- flysas.com
Flights from Milan Linate Airport to Luleå/Kallax Airport via Stockholm
- Ave. Duration
- 6h 20m
- When
- Monday, Wednesday, Thursday, Friday, and Sunday
- Estimated price
- kr 1,700–7,000
Flights from Milano Malpensa Airport to Luleå/Kallax Airport via Stockholm
- Ave. Duration
- 5h 25m
- When
- Monday, Wednesday, Thursday, Friday, and Sunday
- Estimated price
- kr 1,400–6,000
- Website
- swiss.com
Flights from Milano Malpensa Airport to Luleå/Kallax Airport via Zurich
- Ave. Duration
- 8h 47m
- When
- Friday
- Estimated price
- kr 1,400–6,500
- Website
- norwegian.com
Flights from Milano Malpensa Airport to Luleå/Kallax Airport via Stockholm
- Ave. Duration
- 6h 55m
- When
- Monday, Wednesday, Friday, and Sunday
- Estimated price
- kr 1,000–4,500
- Website
- flyedelweiss.com
Flights from Milano Malpensa Airport to Luleå/Kallax Airport via Zurich
- Ave. Duration
- 8h 10m
- When
- Friday
- Estimated price
- kr 1,400–6,500
- Phone
- +39 02 7249 4494
- my-link@trenord.it
- Website
- trenord.it
Train from Milano Porta Garibaldi to Malpensa Aeroporto T1
- Ave. Duration
- 43 min
- Frequency
- Every 30 minutes
- Estimated price
- kr 45–60
- Website
- https://www.trenord.it/en/
Train from Milano Porta Garibaldi to Malpensa Aeroporto T1
- Ave. Duration
- 43 min
- Frequency
- Every 30 minutes
- Estimated price
- kr 45–60
- Website
- https://www.trenord.it/en/
Train from Milano Porta Garibaldi to Malpensa Aeroporto T1
- Ave. Duration
- 43 min
- Frequency
- Every 30 minutes
- Estimated price
- kr 45–60
- Website
- https://www.trenord.it/en/
- Phone
- +39 06 68475475
- ufficiogruppi@trenitalia.it
- Website
- trenitalia.com
Train from Milano Centrale to Brig
- Ave. Duration
- 2h 4m
- Frequency
- Hourly
- Estimated price
- kr 440–950
- Website
- https://www.trenitalia.com/en.html
- 1st Class
- kr 650–950
- 2nd Class
- kr 440–600
Train from Milano Centrale to Verona Porta Nuova
- Ave. Duration
- 1h 23m
- Frequency
- Once daily
- Estimated price
- kr 410–900
- Website
- https://www.trenitalia.com/en.html
- 1st Class
- kr 600–900
- 2nd Class
- kr 410–550
Train from Milano Centrale to Zuerich Hb
- Ave. Duration
- 3h 17m
- Frequency
- Hourly
- Estimated price
- kr 600–1,200
- Website
- https://www.trenitalia.com/en.html
- 1st Class
- kr 800–1,200
- 2nd Class
- kr 600–850
Train from Milano Centrale to Venezia Mestre
- Ave. Duration
- 2h 25m
- Frequency
- Once daily
- Estimated price
- kr 650–1,200
- Website
- https://www.trenitalia.com/en.html
- 1st Class
- kr 800–1,200
- 2nd Class
- kr 650–850
- Phone
- +41 848 446 688
- Website
- sbb.ch
Train from Brig to Berlin Ostbahnhof
- Ave. Duration
- 9h 55m
- Frequency
- 4 times a week
- Estimated price
- kr 4,200–13,000
- Website
- https://www.sbb.ch/en
- Phone
- +46 40 669 62 00
- snalltaget@snalltaget.se
- Website
- snalltaget.se
Train from Berlin Hbf to Stockholm Centralstation
- Ave. Duration
- 16h 6m
- Frequency
- 6 times a week
- Estimated price
- kr 2,000–3,100
- Website
- https://www.snalltaget.se/en
- Phone
- +39 06 68475475
- Website
- trenitalia.com
Train from Milano Centrale to Verona Porta Nuova
- Ave. Duration
- 1h 13m
- Frequency
- Every 30 minutes
- Estimated price
- kr 240–470
- Schedules at
- trenitalia.com
Train from Milano Centrale to Venezia Mestre
- Ave. Duration
- 2h 15m
- Frequency
- Hourly
- Estimated price
- kr 420–850
- Schedules at
- trenitalia.com
- Phone
- +46 77 175 75 75
- kundservice@sj.se
- Website
- sj.se
Train from Stockholm Centralstation to Boden C/Resecentrum
- Ave. Duration
- 13h 13m
- Frequency
- Once daily
- Estimated price
- kr 1,700–2,600
- Website
- https://www.sj.se/en/
Train from Hamburg-Harburg to Stockholm Centralstation
- Ave. Duration
- 12h 59m
- Frequency
- 5 times a week
- Estimated price
- kr 1,900–2,900
- Website
- https://www.sj.se/en/
- Phone
- 0771-444 111
- servicecenter@vy.se
- Website
- norrtag.se
Train from Boden C/Resecentrum to Haparanda station
- Ave. Duration
- 1h 50m
- Frequency
- 4 times a day
- Estimated price
- kr 240–370
- Schedules at
- norrtag.se
Train from Luleå Centralstation to Haparanda station
- Ave. Duration
- 2h 40m
- Frequency
- 4 times a day
- Estimated price
- kr 300–460
- Schedules at
- norrtag.se
- Phone
- +43 (0) 51717
- Website
- nightjet.com
Night train from Zuerich Hb to Hamburg-Harburg
- Ave. Duration
- 10h 36m
- Frequency
- 3 times a day
- Estimated price
- kr 550–1,500
- Website
- https://www.nightjet.com/en/#/home
- Sleeper Carriage
- kr 1,200–1,500
- Couchette Carriage
- kr 900–1,100
- Seating Carriage
- kr 550–700
- Phone
- +46 77 175 75 75
- kundservice@sj.se
- Website
- sj.se
Night train from Stockholm Centralstation to Luleå Centralstation
- Ave. Duration
- 12h 37m
- Frequency
- Once daily
- Estimated price
- kr 1,400–2,400
- Website
- https://www.sj.se/en
- Phone
- +358 0100 3232
- Website
- vr.fi
Train from Oulu to Haaparanta pohjoinen
- Ave. Duration
- 1h 40m
- Frequency
- Twice daily
- Estimated price
- kr 170–290
- Website
- https://www.vr.fi/en
- Phone
- +43 (0)5 1717
- Website
- oebb.at
Train from Venezia Mestre to Wien Hbf
- Ave. Duration
- 6h 59m
- Frequency
- 4 times a day
- Estimated price
- kr 1,000–1,500
- Website
- https://www.oebb.at/en/reiseplanung-services/im-zug/unsere-zuege/railjet
- Website
- https://shop.oebbtickets.at/en/ticket
- *
- kr 1,000–1,500
- Phone
- +43 (0) 5 1717
- Website
- oebb.at
Train from Wien Hbf to Warszawa Zachodnia
- Ave. Duration
- 7h 47m
- Frequency
- 4 times a day
- Estimated price
- kr 1,500–2,800
- Website
- https://www.oebb.at/en/reiseplanung-services/im-zug/unsere-zuege/eurocity-intercity
- Website
- https://shop.oebbtickets.at/en/ticket
- Phone
- +49 (0) 221 800 20 820
- info@urlaubs-express.de
- Website
- urlaubs-express.de
Car train from Lörrach Hbf to Lüneburg
- Ave. Duration
- 9h 29m
- Frequency
- Once a week
- Estimated price
- kr 1,100–1,300
- Website
- https://urlaubs-express.de/?lang=en
- Phone
- +46 922-129 55
- info@tapanis.se
- Website
- tapanis.se
Bus from Stockholm, Cityterminalen to Tornio
- Ave. Duration
- 14h 45m
- Frequency
- Once a week
- Estimated price
- kr 1,100–1,300
- Website
- https://tapanis.se/
- Phone
- +3 318 576 2228
- Website
- blablacar.co.uk
Bus from Verona - Bus Stop to Zagreb - Bus Station
- Ave. Duration
- 7h 35m
- Frequency
- Twice daily
- Estimated price
- kr 470–850
- Website
- https://www.blablacar.co.uk/bus
- Phone
- +385 (0)98 610 311
- info@pepeks.hr
- Website
- pepeks.hr
Bus from Zagreb, Autobusni Kolodvor to Stockholm, Cityterminalen
- Ave. Duration
- 24h 19m
- Frequency
- Once a week
- Schedules at
- pepeks.hr
- customerservices@terravision.eu
- Website
- terravision.eu
Bus from Piazza Luigi di Savoia to Milan Bergamo Orio al Serio Airport
- Ave. Duration
- 50 min
- Frequency
- Every 30 minutes
- Estimated price
- kr 55–280
- Website
- https://www.terravision.eu/
- Phone
- +49 30 300 137 300
- service@flixbus.com
- Website
- https://www.flixbus.fr
Bus from Warsaw, Bus Station West to Kemi, Bus Station
- Ave. Duration
- 31h 35m
- Frequency
- Once daily
- Estimated price
- kr 1,700–2,900
- Website
- https://www.flixbus.co.uk
Bus from Milano, Autostazione Lampugnano to Krakow, MDA Bus Station
- Ave. Duration
- 18h 55m
- Frequency
- Once daily
- Estimated price
- kr 1,200–2,000
- Website
- https://www.flixbus.co.uk
Bus from Krakow, MDA Bus Station to Kemi, Bus Station
- Ave. Duration
- 36h
- Frequency
- Once daily
- Estimated price
- kr 2,000–3,300
- Website
- https://www.flixbus.co.uk
- Ave. Duration
- 1h 45m
- Estimated price
- kr 210–240
Länstrafiken Norrbotten
- Phone
- 0771-100 110
- Website
- lanstrafikennorrbotten.se
Länstrafiken Norrbotten
- Phone
- 0771-100 110
- Website
- lanstrafikennorrbotten.se
Want to know more about travelling around Sweden
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
How to plan an amazing trip around Scandinavia
Read the travel guide
Italy Travel Guides
Read the travel guide
Heading to Europe? Read this before you buy a Eurail Pass
Read the travel guide
More Questions & Answers
Milan to Haparanda train services, operated by Trenitalia EuroCity, arrive at Zuerich Hb station.
Yes, the driving distance between Milan to Haparanda is 3169 km. It takes approximately 32h 33m to drive from Milan to Haparanda.
There are 141+ hotels available in Haparanda.




























































