- Must visit
Pinacoteca di Brera
Milan’s premier art gallery, known for Italian masterpieces by Raphael, Caravaggio, and Mantegna in the historic Brera district.
Cheapest price
$47
Average price
$64
Fastest journey
10 h 30 m
Average duration
11 h 5 m
Buses per day
26
Distance
736 km
The best way to find a cheap bus ticket from Barletta to Milan is to book your journey as far in advance as possible and to avoid traveling at rush hour.
The average ticket from Barletta to Milan will cost around $64 if you buy it on the day, but the cheapest tickets can be found for only $47.
Of the 26 buses that leave Barletta for Milan on Fri, Jun 19, 2 travel direct so it’s quite easy to avoid journeys where you’ll have to change along the way.
On Fri, Jun 19 the direct buses cover the 736 km distance in an average of 11 h 5 m but if you time it right, some buses will get you there in just 10 h 30 m .
On Fri, Jun 19 the slowest buses will take 11 h 30 m and usually involve a change or two along the way, but you might be able to save a few pennies if you’re on a budget.
Regionale Veloce 4326+
044
Regionale Veloce 4338+
044
Regionale Veloce 4334+
044
Regionale Veloce 4348+
044
Regionale 4328+
044
124 · 101
044
124 · 101
214 · 200
044Omio recommends booking the train as it is the most popular option from Barletta to Milan among Omio's users. If you are prioritising price take the train with prices starting from $29. For those with little time consider booking a flight which can get you there in 1h 33m. In case you are seeking to minimise your carbon footprint the train is your best bet as it emits only 0.2 - 0.7kg. The ticket price range depends on the travel mode: a train costs an average of $29, and a flight costs an average of $21.
Distance: 457 miles (736 km)
| Bus | Most popular Train | Flight | Driving |
|---|---|---|---|
$81 Average price | $75 Average price Cheapest | $95 Average price | $246 Average price (fuel + tolls) |
10h 34m Average total duration 10h 4m Onboard + 30m Additional time* | 8h 38m Average total duration 8h 8m Onboard + 30m Additional time* | 4h 33m Average total duration Fastest 1h 33m Onboard + 3h 0m Additional time* | 9h 24m Average total duration (door-to-door) |
0.7 - 1.8kg CO2 emissions | 0.2 - 0.7kg CO2 emissions Lowest | 2.2 - 4.4kg CO2 emissions | - CO2 emissions |
![]() Most popular bus company | ![]() Most popular train company | ![]() Most popular airline | Your own car or car rental |
Direct Options | Direct Options | Direct Options | Direct Options |
Additional time: Average total travel duration to departure point, security checks and transfers.
This is compared to other travel options from Barletta to Milan:
A train is $6 (€5) less than a bus for this route with tickets for a bus from Barletta to Milan costing on average $81 (€66).
A train is $20 (€16) less than a flight for this route with tickets for a flight from Barletta to Milan costing on average $95 (€77).
Other travel options to Milan take longer:
Train takes on average 8h 8m.
Bus takes on average 10h 4m.
Tickets start at around $81 (€66) compared to roughly $246 (€202) in fuel and tolls — a saving of about $165 (€136). The journey takes 10h 4m versus 9h 24m by car, so you'll arrive a bit later, but you can use the time productively rather than spending it behind the wheel. No parking to sort, no fuel stops, and most coaches have Wi-Fi and power outlets.
Direct services are operated by Marino Autolinee, BlaBlaCar.
Driving is worth considering if you're on a tight schedule, travelling as a group (where fuel costs split several ways), or want the flexibility to stop along the way.
| Operator | Departure Time | Arrival Time | Duration | Departure days | Cheapest price |
|---|---|---|---|---|---|
Operator Trenitalia | Departure Time 12:03AM | Arrival Time 06:40PM | Duration 18h37 | Departure days Mon | Cheapest price $79 |
Operator Regionale | Departure Time 12:49AM | Arrival Time 06:40PM | Duration 17h51 | Departure days Mon, Sun | Cheapest price $52 |
Operator Regionale | Departure Time 05:03AM | Arrival Time 06:40PM | Duration 13h37 | Departure days Mon, Tue, Wed, Fri, Sat | Cheapest price $52 |
Operator Frecciarossa | Departure Time 05:57AM | Arrival Time 06:40PM | Duration 12h43 | Departure days Mon, Tue, Wed, Fri, Sat, Sun | Cheapest price $65 |
Operator Trenitalia | Departure Time 06:16AM | Arrival Time 06:40PM | Duration 12h24 | Departure days Mon, Tue, Wed, Fri, Sat, Sun | Cheapest price $52 |
Operator Regionale | Departure Time 06:23AM | Arrival Time 06:40PM | Duration 12h17 | Departure days Mon, Tue, Wed, Fri | Cheapest price $52 |
Operator Intercity | Departure Time 06:35AM | Arrival Time 06:40PM | Duration 12h05 | Departure days Mon, Tue, Wed, Fri, Sat, Sun | Cheapest price $56 |
Operator Marino Autolinee | Departure Time 07:20AM | Arrival Time 06:40PM | Duration 11h20 | Departure days Mon, Tue, Wed, Fri, Sat, Sun | Cheapest price $73 |
Operator BlaBlaCar | Departure Time 09:20AM | Arrival Time 06:20PM | Duration 9h00 | Departure days Tue | Cheapest price $79 |
Operator Intercity | Departure Time 12:38PM | Arrival Time 06:25AM | Duration 17h47 | Departure days Mon, Tue, Wed, Fri, Sat, Sun | Cheapest price $51 |
Operator Regionale | Departure Time 01:12PM | Arrival Time 06:25AM | Duration 17h13 | Departure days Sat, Sun | Cheapest price $47 |
Operator Regionale | Departure Time 01:44PM | Arrival Time 06:25AM | Duration 16h41 | Departure days Mon, Tue, Wed, Fri | Cheapest price $47 |
Operator BlaBlaCar | Departure Time 02:00PM | Arrival Time 10:00PM | Duration 8h00 | Departure days Sat | Cheapest price $81 |
Operator Frecciarossa | Departure Time 02:06PM | Arrival Time 06:25AM | Duration 16h19 | Departure days Mon, Tue, Wed, Fri, Sat, Sun | Cheapest price $60 |
Operator Regionale | Departure Time 02:16PM | Arrival Time 06:25AM | Duration 16h09 | Departure days Mon, Tue, Wed, Fri | Cheapest price $47 |
Operator Intercity | Departure Time 02:38PM | Arrival Time 06:25AM | Duration 15h47 | Departure days Mon, Tue, Wed, Fri, Sat, Sun | Cheapest price $51 |
Operator Regionale | Departure Time 02:43PM | Arrival Time 06:25AM | Duration 15h42 | Departure days Mon, Tue, Wed, Fri | Cheapest price $47 |
Operator Regionale | Departure Time 02:53PM | Arrival Time 06:25AM | Duration 15h32 | Departure days Sat | Cheapest price $47 |
Operator BlaBlaCar | Departure Time 03:00PM | Arrival Time 11:10PM | Duration 8h10 | Departure days Sat | Cheapest price $82 |
Operator Frecciarossa | Departure Time 03:06PM | Arrival Time 06:25AM | Duration 15h19 | Departure days Mon, Tue, Wed, Fri, Sat, Sun | Cheapest price $60 |
Operator Trenitalia | Departure Time 03:07PM | Arrival Time 06:25AM | Duration 15h18 | Departure days Mon, Tue, Wed, Fri, Sat, Sun | Cheapest price $47 |
Operator Regionale | Departure Time 03:40PM | Arrival Time 06:25AM | Duration 14h45 | Departure days Sat, Sun | Cheapest price $47 |
Operator Regionale | Departure Time 03:44PM | Arrival Time 06:25AM | Duration 14h41 | Departure days Mon, Tue, Wed, Fri | Cheapest price $47 |
Operator Regionale | Departure Time 04:14PM | Arrival Time 06:25AM | Duration 14h11 | Departure days Mon, Tue, Wed, Fri | Cheapest price $47 |
Operator Frecciarossa | Departure Time 05:06PM | Arrival Time 06:25AM | Duration 13h19 | Departure days Mon, Tue, Wed, Fri, Sat, Sun | Cheapest price $60 |
Operator Regionale | Departure Time 05:14PM | Arrival Time 06:25AM | Duration 13h11 | Departure days Mon, Tue, Wed, Fri | Cheapest price $47 |
Operator Regionale | Departure Time 05:17PM | Arrival Time 06:25AM | Duration 13h08 | Departure days Sun | Cheapest price $59 |
Operator Regionale | Departure Time 05:44PM | Arrival Time 06:25AM | Duration 12h41 | Departure days Mon, Tue, Wed, Thu, Fri | Cheapest price $47 |
Operator Regionale | Departure Time 06:14PM | Arrival Time 06:25AM | Duration 12h11 | Departure days Mon, Tue, Wed, Thu, Fri | Cheapest price $47 |
Operator Regionale | Departure Time 06:21PM | Arrival Time 06:25AM | Duration 12h04 | Departure days Sat, Sun | Cheapest price $47 |
Operator Regionale | Departure Time 06:44PM | Arrival Time 06:25AM | Duration 11h41 | Departure days Mon, Tue, Wed, Thu, Fri | Cheapest price $47 |
Operator Marino Autolinee | Departure Time 07:30PM | Arrival Time 06:25AM | Duration 10h55 | Departure days Everyday | Cheapest price $82 |
Operator Marino Autolinee | Departure Time 11:10PM | Arrival Time 09:40AM | Duration 10h30 | Departure days Mon, Tue, Wed, Fri, Sat, Sun | Cheapest price $73 |
Operator Marino Autolinee | Departure Time 11:40PM | Arrival Time 09:40AM | Duration 10h00 | Departure days Thu | Cheapest price $95 |
The table below shows live departures for Barletta to Milan buses for today, Thursday, June 18. You can also manually refresh the results below to see updated bus journeys.
| Provider | Departs | Duration | Arrives | Transfers | Tickets |
|---|---|---|---|---|---|
Regionale Veloce 4348+ 044 | 6:14 PM Barletta station | 12h11 | 6:25 AM Milano, San Donato - Settore B (Viale Giuseppe Impastato) | 1 transfer | |
Regionale Veloce 4354+ 044 | 6:44 PM Barletta station | 11h41 | 6:25 AM Milano, San Donato - Settore B (Viale Giuseppe Impastato) | 1 transfer | |
044 | 7:30 PM Barletta, Via Andria (Casermette) | 10h55 | 6:25 AM Milano, San Donato - Settore B (Viale Giuseppe Impastato) | 0 transfersDirect | |
044 | 7:30 PM Barletta, Via Andria (Casermette) | 11h30 | 7:00 AM Milano, Autostazione Lampugnano | 0 transfersDirect | |
105 · 101 | 11:40 PM Barletta, Via Andria (Casermette) | 10h00 | 9:40 AM Milano, San Donato - Settore B (Viale Giuseppe Impastato) | 1 transfer | |
105 · 101 | 11:40 PM Barletta, Via Andria (Casermette) | 10h40 | 10:20 AM Milano, Autostazione Lampugnano | 1 transfer | |
| Friday, June 19 | |||||
Regionale 4300+ 210 · 200 | 5:03 AM Barletta station | 13h37 | 6:40 PM Milano, San Donato - Settore B (Viale Giuseppe Impastato) | 2 transfers | |
FRECCIAROSSA 8810+ 210 · 200 | 5:57 AM Barletta station | 12h43 | 6:40 PM Milano, San Donato - Settore B (Viale Giuseppe Impastato) | 2 transfers | |
BUS L716A+ 210 · 200 | 6:16 AM Barletta station | 12h24 | 6:40 PM Milano, San Donato - Settore B (Viale Giuseppe Impastato) | 2 transfers | |
Regionale 4304+ 210 · 200 | 6:23 AM Barletta station | 12h17 | 6:40 PM Milano, San Donato - Settore B (Viale Giuseppe Impastato) | 2 transfers | |
Intercity 606+ 210 · 200 | 6:35 AM Barletta station | 12h05 | 6:40 PM Milano, San Donato - Settore B (Viale Giuseppe Impastato) | 2 transfers | |
214 · 200 | 7:20 AM Barletta, Via Andria (Casermette) | 12h05 | 7:25 PM Milano, Autostazione Lampugnano | 1 transfer | |
214 · 200 | 7:20 AM Barletta, Via Andria (Casermette) | 11h20 | 6:40 PM Milano, San Donato - Settore B (Viale Giuseppe Impastato) | 1 transfer | |
Intercity 612+ 044 | 12:38 PM Barletta station | 17h47 | 6:25 AM Milano, San Donato - Settore B (Viale Giuseppe Impastato) | 1 transfer | |
Regionale Veloce 4326+ 044 | 1:44 PM Barletta station | 16h41 | 6:25 AM Milano, San Donato - Settore B (Viale Giuseppe Impastato) | 1 transfer | |
FRECCIAROSSA 9808+ 044 | 2:06 PM Barletta station | 16h19 | 6:25 AM Milano, San Donato - Settore B (Viale Giuseppe Impastato) | 1 transfer | |
Regionale 4328+ 044 | 2:16 PM Barletta station | 16h09 | 6:25 AM Milano, San Donato - Settore B (Viale Giuseppe Impastato) | 1 transfer | |
Intercity 614+ 044 | 2:38 PM Barletta station | 15h47 | 6:25 AM Milano, San Donato - Settore B (Viale Giuseppe Impastato) | 1 transfer | |
Regionale 4330+ 044 | 2:43 PM Barletta station | 15h42 | 6:25 AM Milano, San Donato - Settore B (Viale Giuseppe Impastato) | 1 transfer | |
FRECCIAROSSA 8828+ 044 | 3:06 PM Barletta station | 15h19 | 6:25 AM Milano, San Donato - Settore B (Viale Giuseppe Impastato) | 1 transfer | |
BUS L704C+ 044 | 3:07 PM Barletta station | 15h18 | 6:25 AM Milano, San Donato - Settore B (Viale Giuseppe Impastato) | 1 transfer | |
Regionale Veloce 4334+ 044 | 3:44 PM Barletta station | 14h41 | 6:25 AM Milano, San Donato - Settore B (Viale Giuseppe Impastato) | 1 transfer | |
Regionale Veloce 4338+ 044 | 4:14 PM Barletta station | 14h11 | 6:25 AM Milano, San Donato - Settore B (Viale Giuseppe Impastato) | 1 transfer | |
FRECCIAROSSA 8830+ 044 | 5:06 PM Barletta station | 13h19 | 6:25 AM Milano, San Donato - Settore B (Viale Giuseppe Impastato) | 1 transfer | |
Regionale Veloce 4340+ 044 | 5:14 PM Barletta station | 13h11 | 6:25 AM Milano, San Donato - Settore B (Viale Giuseppe Impastato) | 1 transfer | |
Regionale Veloce 4346+ 044 | 5:44 PM Barletta station | 12h41 | 6:25 AM Milano, San Donato - Settore B (Viale Giuseppe Impastato) | 1 transfer | |
This is the last bus of the day. | |||||
Find all the dates and times for this journey
Compare train, bus, and flight prices over the next three weeks. See the best deals at a glance, find the lowest fares, and choose the option that fits your budget.
Buses from Barletta to Milan run on average 7 times per day, taking around 10h 4m. Cheap bus tickets for this journey start at $46 (€37) but you can travel from only $21 (€17) by flight.
There are 3 buses per day. The earliest bus runs at 00:03, the last at 23:50. The fastest bus covers the 457 miles (736 km) distance in 10h 30m.
Distance 457 miles (736 km) |
Average bus duration 10h 4m |
Cheapest ticket price $46 (€37) |
Buses per day 7 |
Direct buses 3 |
Fastest bus 10h 30m |
First bus 12:03 AM |
Last bus 11:50 PM |
Cheapest Month Apr |
Cheapest Day Mon |
High Season Jul - Sep |
Low Season Oct - Dec |
Busiest Day Sat |
Least Busy Day Sun |
Best time to book 7 days |
Discover the best of Milan — top attractions, local food, transport tips, budget advice, and currency essentials. Plan your perfect Milan trip today.
Milan’s premier art gallery, known for Italian masterpieces by Raphael, Caravaggio, and Mantegna in the historic Brera district.
Museum entry for Leonardo’s The Last Supper, one of the world’s most famous artworks and a priority booking site in Milan.
Major museum of 20th-century Italian art facing Piazza del Duomo, with strong Futurist collections and rooftop views.
Milan’s canal district, known for waterside walks, lively atmosphere, and highly photogenic bridges and reflections.
Charming central neighborhood with elegant streets, galleries, boutiques, and a classic Milanese artistic atmosphere.
Milan’s main square and the city’s most important urban landmark, ideal for first-time visitors and classic views.
Milan’s signature saffron risotto, rich with butter and cheese, prized for its golden color and elegant flavor.
A traditional breaded veal cutlet, fried until crisp. It is one of the city’s most iconic and historic main dishes.
Braised veal shank, often served with risotto alla Milanese. It is a classic Lombard comfort dish with deep, slow-cooked flavor.
Iconic casual spot famous for panzerotti, beloved by locals and visitors for quick, affordable bites near the Duomo.
Well-known modern Milanese restaurant celebrated for refined local dishes such as mondeghili and risotto in a stylish setting.
Historic traditional trattoria serving classic Milanese and Lombard dishes in an old-world, elegant atmosphere.
Prices are high by Italian standards, especially for hotels and central dining, but budget cafés and aperitivo deals help control daily costs.
Tipping is modest. Service may be included or a coperto charged. Round up or leave 5-10% for very good restaurant service; small change for taxis and cafés is enough.
Official public transport app
Orio Al Serio Airport, Bergamo -> Milano Centrale
Bus connection Barletta Milano is guaranteed every day with a direct bus service that leaves at 19.45 and arrives the next morning. There are also two routes with an intermediate change that depart in the morning or evening. The trip lasts about 11 hours. The departure station is in Via Andria near the Barracks Stella and the arrival is in Milan Lampugnano.
The companies that ensure the journey by bus Barletta Milano are MarinoBus and Flixbus. MarinoBus provides travelers with a direct trip at 19.45 and two trips with a change, one at 07: 55 and the other at 23:45. Flixbus always makes a change in Bologna or Rome.
The direct journey by bus Barletta Milano requires a journey time of 11 hours. The 23:45 alternative, with an intermediate change at Cerignola, also has the same duration. The 07:55 am ride, on the other hand, lasts about 12 hours. Flixbus takes a minimum of 12 hours but some routes are longer. The difference depends on the route and the time of day.
Every day, from Monday to Sunday, there is a Barletta Milano bus without intermediate changes and the departure is scheduled for 19:45. The travel options increase with other available routes that require a change: the first is at 7:55 in the morning with arrival in the late afternoon and the second at 23:45 with arrival expected the next morning.
Barletta Bus Station: is located in Via Andria, at the Stella barracks, and is about 1.6 km from the center of Barletta. The city can be reached in 5 minutes by car. There is a car park, petrol station and hotels nearby.
Milan Bus Station: arrival in Lampugnano. The bus station is connected to the city centre by the bus line 561 and the subway M1. The journey takes an average of 40 minutes. An alternative is a taxi, always available nearby. The property has a ticket office and waiting areas.
Find answers to the most common questions about traveling from Barletta to Milan by bus. From journey times and ticket prices to direct connections, first and last departures, and even whether the route is scenic, our FAQs cover everything you need to plan your trip. Whether you’re looking for the fastest bus, the cheapest option, or tips for making the most of your visit at Milan, this guide helps you travel smarter and with confidence.

Here are some other resources that might have the information you need