Visiting Puglia without a car is perfectly possible, as long as you are happy with a slightly different rhythm: less flexibility with timetables, but comfortable journeys along the coast and a good excuse to look up from the road. This guide follows the logic of our 7-day itinerary and adapts it step by step to the trains and buses that actually run on the ground, with no improvising.

- Three networks to know: Trenitalia on the Adriatic coast (Bari, Polignano a Mare, Monopoli, Ostuni, Brindisi, Lecce), Ferrovie del Sud Est (FSE) for the Itria Valley and Salento, and complementary buses in rural areas.
- Tickets: ticket machines at stations, authorised bars and tobacconists, or the Trenitalia app (which also covers FSE journeys); a paper ticket must be validated before boarding.
- Itinerary: 7 days without a car, from Bari to Gallipoli, with the same stops as a classic road trip (Itria Valley, Ostuni, Lecce, Otranto, Salento).
- To check: the COTRAP website centralises some of the bus timetables but does not include FSE lines; Google Maps remains incomplete on rural lines.
- Good to know: the seasonal Salento in Bus service complements the FSE network in Salento in summer.
- Understanding the network: Trenitalia, FSE and buses
- Tickets, apps and validation
- From Bari airport without a car
- Day 1: Bari
- Day 2: Polignano a Mare and Monopoli
- Day 3: the Itria Valley
- Day 4: Ostuni
- Day 5: Lecce
- Day 6: Otranto and Salento
- Day 7: Gallipoli
- The seasonal Salento in Bus service
- Common mistakes to avoid
- Frequently asked questions


Polignano and Monopoli
Two stations on the same line, just a few minutes apart by train.
See the details ↓
The Itria Valley
The FSE network links the villages of the Itria Valley to one another.
See the details ↓



Gallipoli
The final stop on the Ionian Sea side, before heading back to Bari or Brindisi.
See the details ↓Understanding the network: Trenitalia, FSE and buses
Three networks share Puglia between them, and it pays to know them so that you don’t get lost looking for a train that doesn’t exist on that particular operator.
Trenitalia provides the backbone along the Adriatic coast: Bari, Polignano a Mare, Monopoli, Fasano, Ostuni, Brindisi and Lecce are linked by Regionali trains (the cheapest) and by Intercity trains, which are faster but more expensive.
Ferrovie del Sud Est (FSE), a subsidiary of Trenitalia but run separately, serves two areas that the national rail network does not cover: the Itria Valley from Bari (Martina Franca, Alberobello, Cisternino) on one side, and Salento from Lecce (Gallipoli, Otranto via Maglie, as far as Gagliano del Capo) on the other. FSE also runs a complementary bus network, particularly in rural areas and on Sundays.
To place these different areas in relation to one another, our guide to the geography of Puglia gives an overview of the provinces and the distances between them.
Where neither trains nor regular buses are enough, local companies take over: STP Brindisi and STP Terra d’Otranto for services around Brindisi, Ostuni, Lecce and Gallipoli, as well as a seasonal service dedicated to Salento, described in detail below.
Tickets, apps and validation
Tickets can be bought at the ticket machines in stations (cards accepted), in authorised bars and tobacconists in smaller towns, or directly in the Trenitalia app, which also covers FSE journeys. A regional ticket bought at the station must be validated before you board, at the yellow or green machines; a ticket bought in the app is validated automatically.
For buses, the COTRAP website centralises some of the regional timetables, but does not include FSE bus lines: for those you need to go directly to the FSE website. Google Maps works well for Trenitalia journeys and city buses, but remains incomplete on rural lines.
From Bari airport without a car
Bari Karol-Wojtyła Airport is linked to the city centre and to Bari Centrale station by a direct rail connection (line FM2, operated by Ferrotramviaria), which makes it the most convenient entry point for starting this car-free itinerary. If your flight lands in Brindisi rather than Bari, Brindisi station is directly connected to Lecce and the Adriatic coast by Trenitalia.
Day 1: Bari
No travel on this first day: Bari is the terminus of both Trenitalia and FSE, the ideal place to drop your bags and explore Bari Vecchia on foot before catching your first train the next day. For the full sightseeing programme for this stop, see Day 1 of the complete itinerary.
Day 2: Polignano a Mare and Monopoli
A direct Trenitalia line from Bari Centrale, stopping at Polignano a Mare and then at Monopoli a few minutes further on: it is one of the simplest journeys of the whole itinerary, with no changes. Both stations are a few minutes’ walk from the historic centres. Detailed programme: Day 2 of the complete itinerary.
Day 3: the Itria Valley
For Alberobello, there are two options from Bari: the FSE train via Putignano (a little over an hour), or a direct bus linking Bari and Alberobello in a comparable time. For Locorotondo and Cisternino, it is better to combine the two villages in a single outing from Alberobello or Martina Franca, by local bus or by taxi over short distances: direct connections between these three villages are more limited than on the main route. Cisternino illustrates the classic trap well: its Trenitalia station is far from the centre, whereas the FSE stop is much closer to the village — always check which of the two serves your journey.
Day 4: Ostuni
Trenitalia connects the Itria Valley directly with Ostuni (or Bari with Ostuni on a direct line, around two hours); the station is outside the white town, but connecting buses shuttle up to the centre. For Martina Franca, the FSE line links it with Alberobello and Bari: combine it with Day 3 if you would rather group the whole Itria Valley together than split it over two days.
Day 5: Lecce
Lecce is the second major hub of the itinerary: Trenitalia connects it directly with Ostuni, Brindisi and the whole Adriatic coast, and it is also the starting point of the FSE network into Salento (Gallipoli, Otranto, Gagliano del Capo). It is the ideal stop for a day’s breather with no luggage to move, before heading out to explore the south.
Day 6: Otranto and Salento
From Lecce, the FSE line serves Otranto via Maglie, with a connecting shuttle bus for the last part of the journey — allow a little over an hour and a half in total. In high season (see the Salento in Bus section below), a direct Lecce–Otranto line also exists. For Santa Maria di Leuca, at the tip of Salento, it is precisely the seasonal Salento in Bus service that offers the most convenient connection from Lecce or from Otranto.
Day 7: Gallipoli
A direct FSE line from Lecce, about 90 minutes of travel: it is one of the most comfortable journeys of the itinerary for closing the loop before taking your flight from Bari or Brindisi.
The seasonal Salento in Bus service
Every year, the province of Lecce coordinates a network of summer buses called Salento in Bus, designed specifically for reaching the beaches and villages of Salento without a car. For the 2026 season, the service runs from 13 to 30 June, in peak season from 1 July to 31 August (highest frequencies), then from 1 to 13 September. Several lines are directly relevant to this itinerary: Lecce–Torre dell’Orso–Otranto, Lecce–Porto Cesareo–Gallipoli, Lecce–Maglie–Otranto, and two lines linking Lecce and Gallipoli with Santa Maria di Leuca. The service is operated by several local carriers (STP in particular) under the coordination of the province.
Common mistakes to avoid
- Mixing up the FSE station and the Trenitalia station: in several towns (Cisternino in particular), these are two separate stations, sometimes kilometres apart.
- Forgetting to validate your ticket before boarding a regional train when the ticket was bought at the station.
- Travelling on a Sunday without checking the timetables: replacement buses often stand in for trains, with different departure points.
- Relying solely on Google Maps or Rome2Rio for rural buses: these tools have incomplete coverage of FSE and local lines; always cross-check with the operator’s website.
Frequently asked questions
Can you really do this 7-day itinerary entirely without a car?
Yes, by following the order Bari, Polignano a Mare, Itria Valley, Ostuni, Lecce, Otranto, Gallipoli: each stop is linked to the next by Trenitalia, FSE or a regular bus. You simply have to accept less flexible timetables than with a car, especially for the villages of the Itria Valley.
Is the FSE network reliable?
It covers areas that the national rail network does not serve, but with a lower frequency than Trenitalia’s Adriatic line, especially on Sundays. It is always best to check the timetables on the day itself in the Trenitalia app, which also includes FSE journeys.
Do you need to book train tickets in advance?
No: regional trains and most buses do not require a reservation, and tickets can be bought at the station or in the app on the day.
How do you get to Locorotondo and Cisternino without a car?
The simplest way is to combine them with Alberobello or Martina Franca, which are well served by FSE, then reach the two villages by local bus or by taxi over a short distance: direct connections are more limited than on the main route.
Does the Salento in Bus service run all year round?
No, it is a seasonal service that runs from June to September. The rest of the year, you need to use the standard FSE network to reach Otranto, Gallipoli and Santa Maria di Leuca from Lecce.
Planning this car-free itinerary with APULIA
To adapt this train and bus itinerary to your dates, with timetables and good addresses checked area by area: plan your trip to Puglia with APULIA.
Still torn between train, bus and car for your whole stay? Find all our tips in Travelling in Puglia: practical advice for planning your trip.
