The city’s airport, Aeropuerto de San Sebastián, is 22km out of town, near Hondarribia. There are regular flights to Madrid and Barcelona and occasional charters to other major European cities. Biarritz, just over the border in France, is served by Ryanair and EasyJet, among various other budget airlines, and is generally much cheaper to fly into.
Bus E21 runs hourly to San Sebastián (€2.45, 30 minutes), stopping at Plaza de Gipuzkoa.
Buses to/from Biarritz airport (France; €7, 45 minutes) run six to eight times daily.
Taxi from the airport to the city centre costs about €30 to €35.
San Sebastián's sparkling new bus station is 1km southeast of the Parte Vieja, on the east side of the river, and just across from the Renfe train station. All the bus companies have offices and ticket booths in the station, which lies underground.
There are daily bus services to the following:
Car & Motorcycle
The main road crossing into Basque Country from France is the highway (A63 in France) that links up with Spain’s AP8 tollway. This connects San Sebastián with Biarritz (about 50 minutes).
If coming from other parts of Spain, it's fairly straightforward arriving in San Sebastián, though you'll want to want to be mindful of one way streets.
The main Renfe train station is just across Río Urumea, on a line linking Paris to Madrid. There are services to Madrid (from €29, 5½ hours, several daily) and to Barcelona (from €32, six hours, two daily).
For France you must first go to the Spanish/French border town of Irún (or sometimes trains go as far as Hendaye; from €2.25, 27 minutes), which is also served by Eusko Tren/Ferrocarril Vasco (www.euskotren.es), and change there. Trains depart every half-hour from Amara train station, about 1km south of the city centre, and also stop in Pasajes (from €1.70, 12 minutes) and Irún/Hendaye (€2.45, 25 minutes). Another ET/FV railway line heads west to Bilbao via Zarautz, Zumaia and Durango, but it’s painfully slow, so the bus is usually a better plan.