There are 7 ways to get from Moscow to Saint Petersburg by train, bus, car, plane, subway, 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 Leningradsky Railway Terminal to Moskovsky Railway Terminaltrain 754А / ...
3h 47m₽1,600–20,000Bus
cheapest- Take the bus from Severnye Vorota Bus Terminal to Saint Petersburg Bus Terminalbus
10h₽1,400–2,900Drive 703.9 km
- Drive from Moscow to Saint Petersburgcar 703.9 km
7h 16m₽4,755–6,868Fly from Moscow Vnukovo, line 2 subway
- Fly from Moscow Vnukovo (VKO) to Pulkovo Airport (LED)plane VKO - LED
- Take the subway from Moskovskaya to Nevsky Prospektsubway
4h 11m₽4,665–28,480Rideshare
- Take the rideshare from Moscow to Saint Petersburg707.3 km
11h 27m₽1,415Fly from Domodedovo International Airport, line 2 subway
- Fly from Domodedovo International Airport (DME) to Pulkovo Airport (LED)plane DME - LED
- Take the subway from Moskovskaya to Nevsky Prospektsubway
4h 40m₽4,950–28,830Line 1195 bus to Sheremetyevo International Airport, fly, line 2 subway
- Take the bus from Khovrino to Sheremetyevo Airport Terminal Bbus
- Fly from Sheremetyevo International Airport (SVO) to Pulkovo Airport (LED)plane SVO - LED
- Take the subway from Moskovskaya to Nevsky Prospektsubway
4h 37m₽4,815–27,660
Moscow to Saint Petersburg by train
Comparing Your Travel Options
The cheapest way to get from Moscow to Saint Petersburg is to rideshare which costs RUB 1415 and takes 11h 27m.
The fastest way to get from Moscow to Saint Petersburg is to train which takes 3h 47m and costs RUB 1600 - RUB 20000.
Yes, there is a direct bus departing from Severnye Vorota Bus Terminal and arriving at Saint Petersburg 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 Leningradsky Railway Terminal and arriving at Moskovsky Railway Terminal. Services depart hourly, and operate every day. The journey takes approximately 3h 47m.
The distance between Moscow and Saint Petersburg is 641 km. The road distance is 703.9 km.
The best way to get from Moscow to Saint Petersburg without a car is to train which takes 3h 47m and costs RUB 1600 - RUB 20000.
The train from Leningradsky Railway Terminal to Moskovsky Railway Terminal takes 3h 47m including transfers and departs hourly.
Moscow to Saint Petersburg bus services, operated by Avtovokzaly.ru, depart from Severnye Vorota Bus Terminal station.
Moscow to Saint Petersburg train services, operated by Russian Railways (High Speed Trains), depart from Leningradsky Railway Terminal station.
The best way to get from Moscow to Saint Petersburg is to train which takes 3h 47m and costs RUB 1600 - RUB 20000. Alternatively, you can bus, which costs RUB 1400 - RUB 2900 and takes 10h.
What companies run services between Moscow, Russia and Saint Petersburg, Russia?
Russian Railways (High Speed Trains) operates a train from Leningradsky Railway Terminal to Moskovsky Railway Terminal hourly, and the journey takes 3h 47m. Four other operators also service this route. Alternatively, Avtovokzaly.ru operates a bus from Severnye Vorota Bus Terminal to Saint Petersburg 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 Moscow Vnukovo to Pulkovo Airport
- Ave. Duration
- 1h 34m
- When
- Every day
- Estimated price
- ₽4,400–28,000
- Website
- pobeda.aero
Flights from Moscow Vnukovo to Pulkovo Airport
- Ave. Duration
- 1h 35m
- When
- Every day
- Estimated price
- ₽4,400–28,000
Flights from Sheremetyevo International Airport to Pulkovo Airport
- Ave. Duration
- 1h 30m
- When
- Every day
- Estimated price
- ₽4,300–27,000
- Website
- rusline.aero
Flights from Moscow Vnukovo to Pulkovo Airport
- Ave. Duration
- 1h 40m
- When
- Saturday
- Estimated price
- ₽4,400–28,000
Flights from Moscow Vnukovo to Pulkovo Airport via Tambov
- Ave. Duration
- 3h 35m
- When
- Monday and Friday
- Estimated price
- ₽6,500–35,000
- Website
- s7.ru
Flights from Domodedovo International Airport to Pulkovo Airport
- Ave. Duration
- 1h 45m
- When
- Every day
- Estimated price
- ₽4,500–28,000
- Website
- alrosa.aero
Flights from Moscow Vnukovo to Pulkovo Airport
- Ave. Duration
- 1h 40m
- When
- Saturday
- Estimated price
- ₽4,400–28,000
- Website
- severstal-avia.ru
Flights from Domodedovo International Airport to Pulkovo Airport via Cherepovets
- Ave. Duration
- 3h 10m
- When
- Monday to Thursday
- Estimated price
- ₽5,000–30,000
- Phone
- 8 (800) 775-00-00
- Website
- Russian Railways
Train from Leningradsky Railway Terminal to Moskovsky Railway Terminal
- Ave. Duration
- 3h 47m
- Frequency
- Hourly
- Website
- Russian Railways
- Phone
- 8 (800) 775-00-00
- Website
- Russian Railways
Train from Leningradsky Railway Terminal to Moskovsky Railway Terminal
- Ave. Duration
- 8h 56m
- Frequency
- 4 times a day
- Estimated price
- ₽1,900–4,300
- Website
- Russian Railways
- 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
- Russian Railways
Train from Leningradsky Railway Terminal to Moskovsky Railway Terminal
- Ave. Duration
- 5h 20m
- Frequency
- Once daily
- Estimated price
- ₽1,700–3,200
- Website
- Russian Railways
- Lastochka Train
- ₽1,700–2,400
- Commuter Electric Train
- ₽2,200–3,200
- Phone
- 8 800 775 54 53
- Website
- Grand Express Train
Train from Leningradsky Railway Terminal to Moskovsky Railway Terminal
- Ave. Duration
- 9h
- Frequency
- Once daily
- Estimated price
- ₽5,000–20,000
- Website
- Grand Express Train
- Kupé
- ₽5,000–9,000
- SW
- ₽10,000–20,000
- Luxe
- ₽60,000
- Phone
- 8 800 775 54 53
- Website
- Grand Service Express
Train from Leningradsky Railway Terminal to Moskovsky Railway Terminal
- Ave. Duration
- 9h 53m
- Frequency
- 3 times a week
- Estimated price
- ₽1,600–2,200
- Website
- Grand Service Express
- Schedules at
- Grand Service Express
- 3rd Class (Platzcart)
- ₽1,600–1,700
- 2nd Class (Kupé)
- ₽1,800–2,200
- Phone
- 8-800-350-11-55
- [email protected]
- Website
- Saint Petersburg Metro
Subway from Moskovskaya to Nevsky Prospekt
- Ave. Duration
- 15 min
- Frequency
- Every 5 minutes
- Estimated price
- ₽65–90
- Website
- Saint Petersburg Metro
- Schedules at
- Saint Petersburg Metro Map
- Podorozhnik Сard
- ₽65
- Token / Bank Card Contactless
- ₽90
Subway from Moskovskaya to Nevsky Prospekt
- Ave. Duration
- 15 min
- Frequency
- Every 5 minutes
- Estimated price
- ₽65–90
- Website
- Saint Petersburg Metro
- Schedules at
- Saint Petersburg Metro Map
- Podorozhnik Сard
- ₽65
- Token / Bank Card Contactless
- ₽90
Subway from Moskovskaya to Nevsky Prospekt
- Ave. Duration
- 15 min
- Frequency
- Every 5 minutes
- Estimated price
- ₽65–90
- Website
- Saint Petersburg Metro
- Schedules at
- Saint Petersburg Metro Map
- Podorozhnik Сard
- ₽65
- Token / Bank Card Contactless
- ₽90
- Phone
- 8-800-775-45-73
- Website
- avtovokzaly.ru
Bus from Severnye Vorota Bus Terminal to Saint Petersburg 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 Severnye Vorota Bus Terminal to Saint Petersburg Bus Terminal
- Ave. Duration
- 9h 35m
- 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 Khovrino to Sheremetyevo Airport Terminal B
- Ave. Duration
- 20 min
- Frequency
- Every 10 minutes
- Estimated price
- ₽320–400
- Schedules at
- aeroexpress.ru
- Phone
- +3 318 576 2228
- Website
- BlaBlaCar
Rideshare from Moscow to Saint Petersburg
- Ave. Duration
- 11h 27m
- Frequency
- 5 times a day
- Estimated price
- ₽1,415
- Schedules at
- BlaBlaCar
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 What are the different types of Renfe trains in Spain?, Travelling to the UK: What do I need to know?, and How to get from London to Edinburgh - to help you get the most out of your next trip.
Booking & Getting There
Moscow to Saint Petersburg bus services, operated by Avtovokzaly.ru, arrive at Saint Petersburg Bus Terminal station.
Moscow to Saint Petersburg train services, operated by Russian Railways (High Speed Trains), arrive at Moskovsky Railway Terminal station.
Yes, the driving distance between Moscow to Saint Petersburg is 704 km. It takes approximately 7h 16m to drive from Moscow to Saint Petersburg.
Check out Blablacar's carpooling service for rideshare options between Moscow and Saint Petersburg. A great option if you don't have a driver's licence or want to avoid public transport.

























