By plane: There are flights to Bilbao (BIO) from many airports and airlines. The airport is just 5 km from the city, the distance to San Sebastian is approximately 100 km.
Here you find great deals on flights to Spain from all major airlines and budget carriers.
By train: In Bilbao there are three different rail companies which connect Bilbao with many province capitals in Spain and towns along the basque coast.
By car: The distance between Bilbao and San Sebastian is about 100 km, the two cities are conntected by the (toll) highway A-8. Alternatively, you can take the country road along the coast, which also allows you to access all the touristic resorts. If you need to rent a car, it will be much more economical to reserve it before your travel than if you rent it when you arrive to the airport. Here you find some great rates for car rentals.
By ship:
From the port of Santurce (in basque: Santurtzi) there are ferries connecting Bilbao with the British Portsmouth.