Travel Information
Compare bus, train, and flight for San Donato Milanese to Foggia
Omio recommends booking the bus as it is the most popular option from San Donato Milanese to Foggia among Omio's users. If you are prioritising price, take the bus, with an average ticket price of $57 For those with little time, consider booking a flight, which has an average total journey time of 3h 34m. If you are seeking to minimise your carbon footprint, the train is your best option, with estimated CO2 emissions of 0.2 - 0.6kg. Average ticket prices depend on the travel mode: a bus costs an average of $57, while a flight costs an average of $171.
Distance: 416 miles (671 km)
Compare bus with
Most popular Bus | Flight | Train | Driving |
|---|---|---|---|
$57 Average price Cheapest | $171 Average price | $134 Average price | $222 Average price (fuel + tolls) |
10h 46m Average total duration 10h 16m Onboard + 30m Additional time* | 3h 34m Average total duration Fastest 1h 34m Onboard + 2h 0m Additional time* | 7h 38m Average total duration 7h 8m Onboard + 30m Additional time* | 6h 55m Average total duration (door-to-door) |
0.7 - 1.7kg CO2 emissions | - CO2 emissions | 0.2 - 0.6kg CO2 emissions Lowest | - CO2 emissions |
![]() Most popular bus company | ![]() Most popular airline | ![]() Most popular train company | 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.
Compare ways to travel from San Donato Milanese to Foggia
Compare the available ways to get from San Donato Milanese to Foggia, with the key details around price, speed, convenience, and direct service.
This is compared to other travel options from San Donato Milanese to Foggia:
A bus is $78 less than a train for this route with tickets for a train from San Donato Milanese to Foggia costing on average $134.
A bus is $114 less than a flight for this route with tickets for a flight from San Donato Milanese to Foggia costing on average $171.
Other travel options to Foggia take longer:
Train takes on average 7h 38m.
Bus takes on average 10h 46m.
Tickets start at around $57 compared to roughly $222 in fuel and tolls — a saving of about $165. The journey takes 10h 16m versus 6h 55m 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.
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.
Travel optionsfrom San Donato Milanese to Foggia
How to get from San Donato Milanese to Foggia by train, bus or flight.
Our recommendation
The best way to travel from San Donato Milanese to Foggia is by taking a bus because it’s the best combination of price and speed.

10:10 PM 12h50 San Donato Milanese 11:00 AM Foggia $30 1 One-way 0 transfers
Cheapest

10:10 PM 12h50 San Donato Milanese 11:00 AM Foggia $30 1 One-way 0 transfers
Fastest

6:05 PM 9h30 San Donato Milanese 3:35 AM Foggia $33 1 One-way 0 transfers
Other options

7:05 PM 9h30 San Donato Milanese 4:35 AM Foggia $37 1 One-way 0 transfers
1:50 PM 12h20 San Donato Milanese 2:10 AM Foggia $70 1 One-way 0 transfers
Find all the dates and times for this journey by train, bus, flight, and ferry .
Compare prices and tickets Prices for trains, buses and flights
Compare bus, train, 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.
More than 1,000 travel companies trust us to sell their tickets all in one place.
FAQs: Travel from San Donato Milanese to Foggia
Travel to Foggia easily. Whether you want fast, cheap or something entirely different, our travel experts have collected everything you need to know so you can find the best option from San Donato Milanese to Foggia.

This is compared to other travel options from San Donato Milanese to Foggia:
A bus is $78 less than a train for this route with tickets for a train from San Donato Milanese to Foggia costing on average $134.
A bus is $114 less than a flight for this route with tickets for a flight from San Donato Milanese to Foggia costing on average $171.
Other travel options to Foggia take longer:
Train takes on average 7h 38m.
Bus takes on average 10h 46m.
- Around 9 buses per day.
- Around 6 flights per day.
- Around 3 trains per day.
However, we recommend checking specific travel dates for your route between San Donato Milanese and Foggia as scheduled services by bus, train, and flight can vary by season or day of the week.
- Flights mostly depart from Milan Bergamo Orio al Serio Airport and arrive in Bari Palese Airport.
- Trains mostly depart from Milan Rogoredo and arrive in Foggia station.
- Buses mostly depart from Milano, San Donato - Settore B (Viale Giuseppe Impastato) and arrive in Foggia, Piazzale On. Vincenzo Russo (Stazione di autobus).
- Travel with Frecciarossa, Intercity, Intercity Notte, Italo, Frecciargento to go to Foggia by train.
- Travel with FlixBus, Marino Autolinee, Itabus, Ferrovie del Gargano to go to Foggia by bus.
- Travel with Malta Air, Aeroitalia to go to Foggia by flight.
- 0 direct trains per day with Frecciarossa, Italo.
- 5 direct buses per day with FlixBus, Marino Autolinee, Itabus.
- 6 direct flights per day with Malta Air, Aeroitalia.
Travelling from San Donato Milanese to Foggia: related information
Here are some other resources that might have the information you need


