From Zürich Hbf an hourly S-Bahn suburban train, line S16, runs towards Thayngen, stopping at Winterthur among others and taking 57 minutes to Schaffhausen. A single ticket costs CHF 26.60/adult or CHF 13.30/child; however, if you have an all-zone Zürich day/monthly/annual pass, this is reduced to CHF 8/adult or CHF 4/child. For visitors to the Rheinfall, which is south of Schaffhausen, an all-zone ZVV pass is sufficient, see below
Local buses , by foot in the old city. Buses to all directions every 20 minutes, in busy times every 10 minutes. For CHF 5.- you can get a "Tageskarte" which allows you to use all busses for a whole day.
Walk through the old city  and admire the renaissance buildings.
Visit the Munot  fortress and enjoy the view over the old city and the beautiful landscape.
The Rheinfall is the largest waterfall in Europe, served by two train stations: Schloss Laufen am Rheinfall on the south side of the river, and Neuhausen Bad, 450 metres from the north side. Boats link the two sides. SLaR station is only open between 08:00 and 16:30 (18:30 during summer). From Zürich: take S-Bahn S7, S8, S12 or S16 to Winterthur (not Schaffhausen). Change for line S33 towards Schaffhausen, and get off at SLaR (if closed, get off at Dachsen and take bus 634 from there). From Schaffhausen: Take S-Bahn S33 two stops to SLaR (for the south side), or a local train bound for Erzingen or Neuhausen Bad one stop to Neuhausen Bad (for the north side). Visitors can see the waterfalls up close from several viewing platforms, and can also take a boat up to an outcropping in the middle of the falls. A speciality is the firework on the night of the 1st August (national holiday)