Leeuwarden sits at the end of a railway line from the south. Direct intercity trains run from Utrecht, Amersfoort, Zwolle, and on through Heerenveen — the trip from Amsterdam takes around 2 hours 20 minutes with a change at Zwolle, or sometimes direct.
The Leeuwarden railway station is a five-minute walk south of the historic centre. By car, the A32 motorway runs in from Zwolle to the south; allow around two hours from Amsterdam. The nearest international airports are Amsterdam Schiphol and Groningen Eelde (the latter much smaller but only an hour by car).