The average train between Saint Petersburg and Moscow takes 8h 32m and the fastest train takes 8h. The train service runs several times per day from Saint Petersburg to Moscow. The journey time may be longer on weekends and holidays; use the search form on this page to search for a specific travel date.
Trains run 5 times a day between Saint Petersburg and Moscow. The earliest departure is at 11:00 PM at night, and the last departure from Saint Petersburg is at 11:55 PM which arrives into Moscow at 7:55 AM. All services run direct with no transfers required, and take on average 8h 32m. The schedules shown below are for the next available departures.
Want to know about travelling from Saint Petersburg to Moscow? We have put together a list of the most frequently asked questions from our users such as: What is the cheapest mode of transport? What is the quickest option? How much do tickets usually cost? and many more.
Yes, there is a direct train departing from Moskovsky Railway Terminal station and arriving at Leningradsky Railway Terminal station. Services depart five times a day, and operate every day. The journey takes approximately 8h 31m.
Saint Petersburg to Moscow train services, operated by Russian Railways (High Speed Trains), depart from Moskovsky Railway Terminal station.
Saint Petersburg to Moscow train services, operated by Russian Railways (High Speed Trains), arrive at Leningradsky Railway Terminal station.
The distance between Saint Petersburg and Moscow is 634.4 km. The road distance is 704 km.
Russian Railways (High Speed Trains) operates a train from Moskovsky Railway Terminal to Leningradsky Railway Terminal hourly, and the journey takes 3h 52m. Four other operators also service this route.