The average train time from Zermatt to Zurich Hb station is 3h 34m, although it takes just 3h 15m on the fastest SBB services. There are around 25 trains per day running from Zermatt to Zurich, during which you'll have to make at least one change, usually in Visp. All trains depart from Zermatt station.