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 704 km
- Drive from Moscow to Saint Petersburgcar 704 km
7h 16m₽4,790–6,919Fly 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 1m₽4,755–27,470Rideshare
- Take the rideshare from Moscow to Saint Petersburg707.4 km
11h 27m₽1,502Fly 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 30m₽5,040–27,820Fly from Sheremetyevo International Airport
- Fly from Sheremetyevo International Airport (SVO) to Pulkovo Airport (LED)plane SVO - LED
6h 52m₽7,005–34,650
Moscow to Saint Petersburg by train
Questions & Answers
The cheapest way to get from Moscow to Saint Petersburg is to rideshare which costs RUB 1502 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 704 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, you could also fly, which costs RUB 7000 - RUB 35000 and takes 6h 52m.
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 29m
- When
- Every day
- Estimated price
- ₽4,500–27,000
- Website
- belavia.by
Flights from Sheremetyevo International Airport to Pulkovo Airport via Gomel
- Ave. Duration
- 3h 40m
- When
- Tuesday and Friday
- Estimated price
- ₽7,000–35,000
Flights from Sheremetyevo International Airport to Pulkovo Airport via Minsk
- Ave. Duration
- 4h 48m
- When
- Every day
- Estimated price
- ₽6,500–34,000
- Website
- utair.ru
Flights from Moscow Vnukovo to Pulkovo Airport
- Ave. Duration
- 1h 20m
- When
- Every day
- Estimated price
- ₽4,500–27,000
Flights from Sheremetyevo International Airport to Pulkovo Airport via Minsk
- Ave. Duration
- 4h 50m
- When
- Every day
- Estimated price
- ₽6,500–34,000
- Website
- s7.ru
Flights from Domodedovo International Airport to Pulkovo Airport
- Ave. Duration
- 1h 35m
- When
- Every day
- Estimated price
- ₽4,600–27,000
- Website
- rusline.aero
Flights from Moscow Vnukovo to Pulkovo Airport
- Ave. Duration
- 1h 40m
- When
- Saturday
- Estimated price
- ₽4,500–27,000
Flights from Moscow Vnukovo to Pulkovo Airport via Tambov
- Ave. Duration
- 3h 35m
- When
- Monday, Tuesday, Thursday, and Friday
- Estimated price
- ₽7,000–35,000
- Website
- alrosa.aero
Flights from Moscow Vnukovo to Pulkovo Airport
- Ave. Duration
- 1h 40m
- When
- Saturday
- Estimated price
- ₽4,500–27,000
- Website
- azimuth.aero
Flights from Moscow Vnukovo to Pulkovo Airport
- Ave. Duration
- 1h 30m
- When
- Wednesday, Friday, and Sunday
- Estimated price
- ₽4,500–27,000
- Phone
- 8 (800) 775-00-00
- Website
- rzd.ru
Train from Leningradsky Railway Terminal to Moskovsky Railway Terminal
- Ave. Duration
- 3h 47m
- Frequency
- Hourly
- Website
- https://eng.rzd.ru/
- Phone
- 8 (800) 775-00-00
- Website
- eng.rzd.ru
Train from Leningradsky Railway Terminal to Moskovsky 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 Leningradsky Railway Terminal to Moskovsky Railway Terminal
- Ave. Duration
- 5h 20m
- 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 Leningradsky Railway Terminal to Moskovsky 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 Leningradsky Railway Terminal to Moskovsky Railway Terminal
- Ave. Duration
- 9h 53m
- Frequency
- 3 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 Moskovskaya to Nevsky Prospekt
- 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 Moskovskaya to Nevsky Prospekt
- 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 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
- +3 318 576 2228
- Website
- blablacar.com
Rideshare from Moscow to Saint Petersburg
- Ave. Duration
- 11h 27m
- Frequency
- 5 times a day
- Estimated price
- ₽1,502
- 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 4 of the smartest ways to explore Australia, How to travel India's Golden Triangle, and How to get from London to Edinburgh - to help you get the most out of your next trip.
More Questions & Answers
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.





















