There are 8 ways to get from Bari to Ascona by plane, train, train (Trenitalia), bus, 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.
Fly to Milano Malpensa Airport, train
best- Fly from Bari Karol Wojtyła Airport (BRI) to Milano Malpensa Airport (MXP)plane BRI - MXP
- Take the train from Malpensa Aeroporto T1 to Mendrisiotrain
- Take the train from Mendrisio to Locarnotrain
4h 30mCHF 32–202Train via Bologna
- Take the train from Bari Centrale to Bologna Centraletrain Fr
- Take the train from Bologna centrale to Milano Centraletrain
- Take the train from Milano Centrale to Locarnotrain
9h 59mCHF 97–189Bus
- Take the bus from Bari to Foggiabus 443 / ...
- Take the bus from Foggia Station to Bellinzonabus
15h 31mCHF 64–78Drive 990 km
- Drive from Bari to Asconacar 990 km
9h 12mCHF 190–275Fly to Milan Linate Airport, train
- Fly from Bari Karol Wojtyła Airport (BRI) to Milan Linate Airport (LIN)plane BRI - LIN
- Take the train from Monza to Locarnotrain
5h 4mCHF 61–172Fly to Il Caravaggio International Airport, bus, train
- Fly from Bari Karol Wojtyła Airport (BRI) to Il Caravaggio International Airport (BGY)plane BRI - BGY
- Take the bus from Milan Bergamo Orio al Serio Airport to Piazza Luigi di Savoiabus
- Take the train from Milano Centrale to Locarnotrain
5h 23mCHF 43–208Train
- Take the train from Bari Centrale to Milano Centraletrain Fr
- Take the train from Milano Centrale to Locarnotrain Re80
10h 40mCHF 118–239Train #2
- Take the train from Bari Centrale to Milano Centraletrain 9928
- Take the train from Milano Centrale to Locarnotrain Re80
11h 38mCHF 145–240
Bari to Ascona by bus
Comparing Your Travel Options
The cheapest way to get from Bari to Ascona is to bus which costs SFr 60 - SFr 80 and takes 15h 31m.
The fastest way to get from Bari to Ascona is to fly and train which takes 4h 30m and costs SFr 30 - SFr 210.
No, there is no direct bus from Bari to Ascona. However, there are services departing from Bari and arriving at Ascona, Centro via Foggia Station, Bellinzona, Piazza Orico and Locarno, Piazza Stazione. The journey, including transfers, takes approximately 15h 31m.
No, there is no direct train from Bari to Ascona. However, there are services departing from Bari Centrale and arriving at Locarno via Bologna centrale and Milano Centrale. The journey, including transfers, takes approximately 9h 59m.
The distance between Bari and Ascona is 935 km. The road distance is 990 km.
The best way to get from Bari to Ascona without a car is to train via Bologna which takes 9h 59m and costs SFr 95 - SFr 190.
It takes approximately 4h 30m to get from Bari to Ascona, including transfers.
Bari to Ascona bus services, operated by FlixBus, depart from Bari station.
Bari to Ascona train services, operated by Trenitalia Frecce, depart from Bari Centrale station.
The best way to get from Bari to Ascona is to train via Bologna which takes 9h 59m and costs SFr 95 - SFr 190. Alternatively, you can bus, which costs SFr 60 - SFr 80 and takes 15h 31m.
What companies run services between Bari, Italy and Ascona, Switzerland?
You can take a train from Bari Centrale to Ascona, Scuole via Bologna centrale, Milano Centrale, Locarno, and Locarno, Piazza Stazione in around 9h 59m. Alternatively, you can take a bus from Bari to Ascona, Centro via Foggia, Foggia Station, Bellinzona, Bellinzona, Piazza Orico, and Locarno, Piazza Stazione in around 15h 31m.
- Website
- ryanair.com
Flights from Bari Karol Wojtyła Airport to Milano Malpensa Airport
- Ave. Duration
- 1h 40m
- When
- Every day
- Estimated price
- CHF 21–120
Flights from Bari Karol Wojtyła Airport to Il Caravaggio International Airport
- Ave. Duration
- 1h 30m
- When
- Every day
- Estimated price
- CHF 25–180
Flights from Bari Karol Wojtyła Airport to Il Caravaggio International Airport via Palermo
- Ave. Duration
- 3h 40m
- When
- Sunday
- Estimated price
- CHF 25–180
- Website
- ita-airways.com
Flights from Bari Karol Wojtyła Airport to Milan Linate Airport
- Ave. Duration
- 1h 30m
- When
- Every day
- Estimated price
- CHF 50–160
Flights from Bari Karol Wojtyła Airport to Milan Linate Airport via Rome
- Ave. Duration
- 3h 40m
- When
- Every day
- Estimated price
- CHF 50–160
- Website
- easyjet.com
Flights from Bari Karol Wojtyła Airport to Milano Malpensa Airport
- Ave. Duration
- 1h 35m
- When
- Every day
- Estimated price
- CHF 22–140
- Website
- neosair.it
Flights from Bari Karol Wojtyła Airport to Milano Malpensa Airport
- Ave. Duration
- 1h 30m
- When
- Thursday
- Estimated price
- CHF 100–320
- Website
- flyulendo.com
Flights from Bari Karol Wojtyła Airport to Il Caravaggio International Airport via Tirana
- Ave. Duration
- 3h 55m
- When
- Monday, Thursday, Friday, Saturday, and Sunday
- Estimated price
- CHF 35–150
- Phone
- +39 02 7249 4494
- my-link@trenord.it
- Website
- Trenord
Train from Malpensa Aeroporto T1 to Mendrisio
- Ave. Duration
- 1h 8m
- Frequency
- Hourly
- Estimated price
- CHF 4–6
- Website
- Trenord
Train from Mendrisio to Locarno
- Ave. Duration
- 57 min
- Frequency
- Hourly
- Estimated price
- CHF 4–6
- Website
- Trenord
Train from Milano Centrale to Locarno
- Ave. Duration
- 1h 55m
- Frequency
- Hourly
- Estimated price
- CHF 7–10
- Website
- Trenord
Train from Monza to Locarno
- Ave. Duration
- 1h 45m
- Frequency
- Hourly
- Estimated price
- CHF 5–7
- Website
- Trenord
Train from Milano Centrale to Locarno
- Ave. Duration
- 1h 55m
- Frequency
- Hourly
- Estimated price
- CHF 7–10
- Website
- Trenord
Train from Malpensa Aeroporto T1 to Mendrisio
- Ave. Duration
- 1h 8m
- Frequency
- Hourly
- Estimated price
- CHF 17–28
- Website
- Swiss Federal Railways (SBB CFF FFS)
Train from Mendrisio to Locarno
- Ave. Duration
- 57 min
- Frequency
- Hourly
- Estimated price
- CHF 16–25
- Website
- Swiss Federal Railways (SBB CFF FFS)
Train from Milano Centrale to Locarno
- Ave. Duration
- 1h 55m
- Frequency
- Hourly
- Estimated price
- CHF 30–55
- Website
- Swiss Federal Railways (SBB CFF FFS)
Train from Milano Centrale to Locarno
- Ave. Duration
- 1h 55m
- Frequency
- Hourly
- Estimated price
- CHF 30–55
- Website
- Swiss Federal Railways (SBB CFF FFS)
- Phone
- +39 06 5210550
- Website
- Trenitalia Frecce
Train from Bari Centrale to Bologna Centrale
- Ave. Duration
- 5h 46m
- Frequency
- Every 3 hours
- Estimated price
- CHF 80–140
- Website
- Trenitalia Frecce
Train from Bari Centrale to Milano Centrale
- Ave. Duration
- 7h 42m
- Frequency
- Every 4 hours
- Estimated price
- CHF 100–180
- Website
- Trenitalia Frecce
- Phone
- +39 06 68475475
- Website
- Trenitalia Intercity
Train from Bari Centrale to Bologna Centrale
- Ave. Duration
- 7h 6m
- Frequency
- Every 4 hours
- Estimated price
- CHF 60–120
- Website
- Trenitalia Intercity
Train from Bari Centrale to Milano Centrale
- Ave. Duration
- 9h 35m
- Frequency
- 5 times a day
- Estimated price
- CHF 85–160
- Website
- Trenitalia Intercity
- Phone
- +39 06 8937 1892
- Website
- Italo Treno
Train from Bologna centrale to Milano Centrale
- Ave. Duration
- 1h 4m
- Frequency
- Every 30 minutes
- Estimated price
- CHF 23–40
- Website
- Italo Treno
Train from Bari Centrale to Milano Centrale
- Ave. Duration
- 8h 40m
- Frequency
- Once daily
- Estimated price
- CHF 110–190
- Website
- Italo Treno
- Phone
- +49 30 300 137 300
- service@flixbus.com
- Website
- Flixbus
Bus from Bari to Foggia
- Ave. Duration
- 1h 40m
- Frequency
- Every 3 hours
- Estimated price
- CHF 10–16
- Website
- Flixbus
- Phone
- +39 06 88 93 82 32
- Website
- Itabus S.p.A.
Bus from Bari to Foggia
- Ave. Duration
- 1h 43m
- Frequency
- Twice daily
- Estimated price
- CHF 6–11
- Website
- Itabus S.p.A.
- Phone
- +390975 343195
- info@ventrebus.com
- Website
- ventrebus.com
Bus from Foggia Station to Bellinzona
- Ave. Duration
- 11h 10m
- Frequency
- Once a week
- Estimated price
- CHF 50
- Schedules at
- ventrebus.com
- customerservices@terravision.eu
- Website
- TERRAVISION
Bus from Milan Bergamo Orio al Serio Airport to Piazza Luigi di Savoia
- Ave. Duration
- 50 min
- Frequency
- Every 30 minutes
- Estimated price
- CHF 4–21
- Website
- TERRAVISION
- Phone
- 035.319366
- ticket@orioshuttle.com
- Website
- orioshuttle.com
Bus from Milan Bergamo Orio al Serio Airport to Piazza Luigi di Savoia
- Ave. Duration
- 50 min
- Frequency
- Every 30 minutes
- Estimated price
- CHF 10–13
- Schedules at
- orioshuttle.com
Want to know more about travelling around Switzerland
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
Italian Lakes: Getting around by train
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
Booking & Getting There
Bari to Ascona bus services, operated by FlixBus, arrive at Foggia station.
Bari to Ascona train services, operated by Trenitalia Frecce, arrive at Bologna Centrale station.
Yes, the driving distance between Bari to Ascona is 990 km. It takes approximately 9h 12m to drive from Bari to Ascona.
There are 2826+ hotels available in Ascona.












































