Montreux is on the main rail line between Geneva and Milan, and trains run frequently. From Geneva it's about 70 minutes; from Lausanne about 30 minutes. Zurich is around two hours via Lausanne. InterCity trains stop at Montreux Station, which sits above the town centre with a covered walkway down to the lakefront.
By car from Geneva, take the A9 motorway along the northern shore of Lake Geneva — about 100 kilometres, around an hour without traffic. Parking in the town centre is limited and expensive; arriving by train is significantly easier.