The train journey from Milan to Geneva takes 4h 09m on average and covers a distance of 155 miles.
Trenitalia is the only train operator serving this route.