The average bus between Milan and Roca takes 20h 38m and the fastest bus takes 16h 22m. The bus service runs several times per day from Milan to Roca. 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 Roca. 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 Roca at 3:27 PM. All services require a transfer, and take on average 20h 38m. The schedules shown below are for the next available departures.
Arrives next day

24h 12m • 1 change
Arrives next day

16h 22m • 1 change
Arrives next day

24h 12m • 1 change
Arrives next day

16h 22m • 1 change
Arrives next day

24h 12m • 1 change
Arrives next day

16h 22m • 1 change
Want to know about travelling from Milan to Roca? 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 Roca. However, there are services departing from Milan station and arriving at Roca station via Lecce. The journey, including transfers, takes approximately 20h 38m.
Milan to Roca bus services, operated by FlixBus, depart from Milano, San Donato M3 station.
Milan to Roca bus services, operated by FlixBus, arrive at Lecce station.
The distance between Milan and Roca is 946.1 km. The road distance is 1,070 km.
FlixBus operates a bus from Milano, San Donato M3 to Lecce once daily. Tickets cost €85–150 and the journey takes 13h 15m.