You can reach almost anywhere by Public Transport in Zandvoort or indeed in Holland.
Zandvoort has its own trainstation and Amsterdam is only a short train journey from Zandvoort with the train often stopping at Haarlem after about 10 minutes on the way. Right: Amsterdam Railway Station
Trains run until midnight. A return ticket (dag retour in dutch), is valid for the whole day until 04:00h the following day.
There's no need to reserve a seat - if you miss a train, just catch the next one. Tickets can be bought on the day of departure either at the machine or at a ticket counter.
Check out the Dutch Railway site: www.ns.nl (there is a link for Enlish language at the top of the page)
For more information about which bus/tram/metro you can take check out: www.9292ov.nl
It's a very informative site. (only available in dutch)
In Zandvoort itself, there is generally a bus which travels right along the seafront boulevards in the high season and there are often 'Tuk Tuks' which may be booked for short journeys. Left: Thai TukTuk in Zandvoort