There are 7 ways to get from Saint Petersburg to Moscow by train, bus, car, subway, plane, or rideshare
Select an option below to see step-by-step directions and to compare ticket prices and travel times in Rome2Rio's travel planner.
Train
best- Take the train from Moskovsky Railway Terminal to Leningradsky Railway Terminaltrain 775А / ...
3h 52m₽1,600–20,000Rideshare
cheapest- Take the rideshare from Saint Petersburg to Moscow705.8 km
11h 27m₽1,271Bus
- Take the bus from Saint Petersburg Bus Terminal to Severnye Vorota Bus Terminalbus
10h₽1,400–2,900Drive 703.6 km
- Drive from Saint Petersburg to Moscowcar 703.6 km
7h 22m₽4,788–6,915Line 2 subway, fly to Moscow Vnukovo
- Take the subway from Nevsky Prospekt to Moskovskayasubway
- Fly from Pulkovo Airport (LED) to Moscow Vnukovo (VKO)plane LED - VKO
4h 51m₽4,750–27,466Line 2 subway, fly to Domodedovo International Airport
- Take the subway from Nevsky Prospekt to Moskovskayasubway
- Fly from Pulkovo Airport (LED) to Domodedovo International Airport (DME)plane LED - DME
4h 51m₽5,040–27,816Line 2 subway, fly to Sheremetyevo International Airport, line 1195 bus
- Take the subway from Nevsky Prospekt to Moskovskayasubway
- Fly from Pulkovo Airport (LED) to Sheremetyevo International Airport (SVO)plane LED - SVO
- Take the bus from Sheremetyevo Airport Terminal C to Khovrinobus
4h 56m₽4,905–26,646
Saint Petersburg to Moscow by train
Questions & Answers
The cheapest way to get from Saint Petersburg to Moscow is to rideshare which costs RUB 1271 and takes 11h 27m.
The fastest way to get from Saint Petersburg to Moscow is to train which takes 3h 52m and costs RUB 1600 - RUB 20000.
Yes, there is a direct bus departing from Saint Petersburg Bus Terminal and arriving at Severnye Vorota Bus Terminal. Services depart three times a day, and operate every day. The journey takes approximately 10h.
Yes, there is a direct train departing from Moskovsky Railway Terminal and arriving at Leningradsky Railway Terminal. Services depart hourly, and operate every day. The journey takes approximately 3h 52m.
The distance between Saint Petersburg and Moscow is 641 km. The road distance is 703.6 km.
The best way to get from Saint Petersburg to Moscow without a car is to train which takes 3h 52m and costs RUB 1600 - RUB 20000.
The train from Moskovsky Railway Terminal to Leningradsky Railway Terminal takes 3h 52m including transfers and departs hourly.
Saint Petersburg to Moscow bus services, operated by Avtovokzaly.ru, depart from Saint Petersburg Bus Terminal station.
Saint Petersburg to Moscow train services, operated by Russian Railways (High Speed Trains), depart from Moskovsky Railway Terminal station.
The best way to get from Saint Petersburg to Moscow is to train which takes 3h 52m and costs RUB 1600 - RUB 20000. Alternatively, you can bus, which costs RUB 1400 - RUB 2900 and takes 10h.
What companies run services between Saint Petersburg, Russia and Moscow, Russia?
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. Alternatively, Avtovokzaly.ru operates a bus from Saint Petersburg Bus Terminal to Severnye Vorota Bus Terminal twice daily. Tickets cost ₽2,000–2,900 and the journey takes 10h. Ecolines RU also services this route once daily.
- Website
- aeroflot.ru
Flights from Pulkovo Airport to Moscow Vnukovo
- Ave. Duration
- 1h 35m
- When
- Every day
- Estimated price
- ₽4,500–27,000
Flights from Pulkovo Airport to Sheremetyevo International Airport
- Ave. Duration
- 1h 30m
- When
- Sunday
- Estimated price
- ₽4,400–26,000
- Website
- s7.ru
Flights from Pulkovo Airport to Domodedovo International Airport
- Ave. Duration
- 1h 35m
- When
- Every day
- Estimated price
- ₽4,600–27,000
- Website
- rusline.aero
Flights from Pulkovo Airport to Moscow Vnukovo
- Ave. Duration
- 1h 40m
- When
- Sunday
- Estimated price
- ₽4,500–27,000
Flights from Pulkovo Airport to Moscow Vnukovo via Tambov
- Ave. Duration
- 3h 35m
- When
- Monday, Tuesday, Thursday, and Friday
- Estimated price
- ₽7,000–35,000
- Website
- alrosa.aero
Flights from Pulkovo Airport to Moscow Vnukovo
- Ave. Duration
- 1h 40m
- When
- Sunday
- Estimated price
- ₽4,500–27,000
- Website
- azimuth.aero
Flights from Pulkovo Airport to Moscow Vnukovo
- Ave. Duration
- 1h 55m
- When
- Monday, Thursday, and Saturday
- Estimated price
- ₽4,500–27,000
- Website
- utair.ru
Flights from Pulkovo Airport to Moscow Vnukovo
- Ave. Duration
- 1h 30m
- When
- Every day
- Estimated price
- ₽4,500–27,000
- Website
- severstal-avia.ru
Flights from Pulkovo Airport to Sheremetyevo International Airport via Cherepovets
- Ave. Duration
- 2h 35m
- When
- Every day
- Estimated price
- ₽5,000–29,000
- Phone
- 8 (800) 775-00-00
- Website
- rzd.ru
Train from Moskovsky Railway Terminal to Leningradsky Railway Terminal
- Ave. Duration
- 3h 52m
- Frequency
- Hourly
- Website
- https://eng.rzd.ru/
- Phone
- 8 (800) 775-00-00
- Website
- eng.rzd.ru
Train from Moskovsky Railway Terminal to Leningradsky Railway Terminal
- Ave. Duration
- 9h
- Frequency
- 4 times a day
- Estimated price
- ₽1,900–4,300
- Website
- https://eng.rzd.ru/
- 1nd Class (SW)
- ₽10,000–14,000
- 3rd Class (Platzcart)
- ₽1,900–2,600
- 2nd Class (Kupé)
- ₽3,100–4,300
- Phone
- 8 (800) 775-00-00
- Website
- rzd.ru
Train from Moskovsky Railway Terminal to Leningradsky Railway Terminal
- Ave. Duration
- 5h 38m
- Frequency
- Once daily
- Estimated price
- ₽1,700–3,200
- Website
- https://eng.rzd.ru/
- Lastochka Train
- ₽1,700–2,400
- Commuter Electric Train
- ₽2,200–3,200
- Phone
- 8 800 775 54 53
- Website
- grandexpress.ru
Train from Moskovsky Railway Terminal to Leningradsky Railway Terminal
- Ave. Duration
- 9h
- Frequency
- Once daily
- Estimated price
- ₽5,000–20,000
- Website
- https://grandexpress.ru/
- Kupé
- ₽5,000–9,000
- SW
- ₽10,000–20,000
- Luxe
- ₽60,000
- Phone
- 8 800 775 54 53
- Website
- grandtrain.ru
Train from Moskovsky Railway Terminal to Leningradsky Railway Terminal
- Ave. Duration
- 8h 29m
- Frequency
- 4 times a week
- Estimated price
- ₽1,600–2,200
- Website
- https://grandtrain.ru/
- Schedules at
- https://grandtrain.ru/raspisanie/
- 3rd Class (Platzcart)
- ₽1,600–1,700
- 2nd Class (Kupé)
- ₽1,800–2,200
- Phone
- 8-800-350-11-55
- [email protected]
- Website
- metro.spb.ru
Subway from Nevsky Prospekt to Moskovskaya
- Ave. Duration
- 15 min
- Frequency
- Every 5 minutes
- Estimated price
- ₽60–86
- Website
- https://metro.spb.ru/en/
- Schedules at
- https://metro.spb.ru/map.html
- Podorozhnik card
- ₽60
- Metro token
- ₽86
Subway from Nevsky Prospekt to Moskovskaya
- Ave. Duration
- 15 min
- Frequency
- Every 5 minutes
- Estimated price
- ₽60–86
- Website
- https://metro.spb.ru/en/
- Schedules at
- https://metro.spb.ru/map.html
- Podorozhnik card
- ₽60
- Metro token
- ₽86
Subway from Nevsky Prospekt to Moskovskaya
- Ave. Duration
- 15 min
- Frequency
- Every 5 minutes
- Estimated price
- ₽60–86
- Website
- https://metro.spb.ru/en/
- Schedules at
- https://metro.spb.ru/map.html
- Podorozhnik card
- ₽60
- Metro token
- ₽86
- Phone
- 8-800-775-45-73
- Website
- avtovokzaly.ru
Bus from Saint Petersburg Bus Terminal to Severnye Vorota Bus Terminal
- Ave. Duration
- 10h
- Frequency
- Twice daily
- Estimated price
- ₽2,000–2,900
- Schedules at
- avtovokzaly.ru
- Phone
- +7 812 386 79 79
- [email protected]
- Website
- ecolines.ru
Bus from Saint Petersburg Bus Terminal to Severnye Vorota Bus Terminal
- Ave. Duration
- 9h 30m
- Frequency
- Once daily
- Estimated price
- ₽1,400–2,100
- Schedules at
- ecolines.ru
- Book at
- ecolines.ru
- Phone
- 8-800-700-33-77
- Website
- aeroexpress.ru
Bus from Sheremetyevo Airport Terminal C to Khovrino
- Ave. Duration
- 19 min
- Frequency
- Every 10 minutes
- Estimated price
- ₽320–400
- Schedules at
- aeroexpress.ru
- Phone
- +3 318 576 2228
- Website
- blablacar.com
Rideshare from Saint Petersburg to Moscow
- Ave. Duration
- 11h 27m
- Frequency
- Hourly
- Estimated price
- ₽1,271
- Schedules at
- blablacar.com
Want to know more about travelling around the world?
Rome2Rio's Travel Guide series provide vital information for the global traveller. Read our range of informative guides on popular transport routes and companies - including How to get from Stansted Airport into central London, How to get from Florence to Rome, and How to get from Heathrow Airport into central London - to help you get the most out of your next trip.
More Questions & Answers
Saint Petersburg to Moscow bus services, operated by Avtovokzaly.ru, arrive at Severnye Vorota Bus Terminal station.
Saint Petersburg to Moscow train services, operated by Russian Railways (High Speed Trains), arrive at Leningradsky Railway Terminal station.
Yes, the driving distance between Saint Petersburg to Moscow is 704 km. It takes approximately 7h 22m to drive from Saint Petersburg to Moscow.
Check out Blablacar's carpooling service for rideshare options between Saint Petersburg and Moscow. A great option if you don't have a driver's licence or want to avoid public transport.

























