The average bus between Milan and Otranto takes 19h 51m and the fastest bus takes 16h. The bus service runs several times per day from Milan to Otranto. The journey time may be longer on weekends and holidays; use the search form on this page to search for a specific travel date.
Buses run twice daily between Milan and Otranto. The earliest departure is at 8:15 AM in the morning, and the last departure from Milan is at 11:05 PM which arrives into Otranto at 3:05 PM. All services require a transfer, and take on average 19h 51m. The schedules shown below are for the next available departures.
Arrives next day

23h 43m • 1 change
Arrives next day

16h • 1 change
Arrives next day

23h 43m • 1 change
Arrives next day

16h • 1 change
Arrives next day

23h 43m • 1 change
Arrives next day

16h • 1 change
Want to know about travelling from Milan to Otranto? We have put together a list of the most frequently asked questions from our users such as: What is the cheapest mode of transport? What is the quickest option? How much do tickets usually cost? and many more.
No, there is no direct bus from Milan to Otranto. However, there are services departing from Milan station and arriving at Otranto station via Lecce. The journey, including transfers, takes approximately 19h 51m.
Milan to Otranto bus services, operated by FlixBus, depart from Milano, San Donato M3 station.
Milan to Otranto bus services, operated by FlixBus, arrive at Otranto - Stazione FSE station.
Book your Milan to Otranto bus tickets online with FlixBus and Salento in bus.
The distance between Milan and Otranto is 960.5 km. The road distance is 1,093 km.
You can take a bus from Milano, San Donato M3 to Otranto - Stazione FSE via Lecce - City Terminal in around 15h 57m.