Travel within Russia is: Unrestricted. See details.
Rome2rio uses cookies to help personalize content and show you personalised ads. By proceeding, you accept the use of cookies in accordance with our privacy policy. You may opt out of personalised ads at any time. OK

Need a hotel room in Saint Petersburg?

Book now

There are 9 ways to get from Moscow to Saint Petersburg by train, bus, rideshare, car, plane or subway

Select an option below to see step-by-step directions and to compare ticket prices and travel times in Rome2rio's travel planner.

Recommended

Train

  1. Take the train from Moskva Kurskaia to St Petersburg Glavny

Cheapest

Rideshare

  1. Take the rideshare from Moscow to Saint Petersburg

Train via Biblioteka Imeni Lenina

  1. Take the train from Moskva Oktiabrskaia to St Petersburg Glavny

Train via Biblioteka Imeni Lenina #2

  1. Take the train from Moscow, Leningradsky Station to St. Petersburg Finlyandskiy Station

Bus

  1. Take the bus from Moscow Severnye Vorota bus station to Saint Petersburg Bus station

Drive

  1. Drive from Moscow to Saint Petersburg

Fly from Moscow Vnukovo, line 2 subway

  1. Fly from Moscow Vnukovo (VKO) to Pulkovo (LED)
  2. Take the line 2 subway from Moskovskaya to Nevsky Prospekt

Fly from Moscow Sheremetyevo, line 2 subway

  1. Fly from Moscow Sheremetyevo (SVO) to Pulkovo (LED)
  2. Take the line 2 subway from Moskovskaya to Nevsky Prospekt

Fly from Moscow Domodedovo, line 2 subway

  1. Fly from Moscow Domodedovo (DME) to Pulkovo (LED)
  2. Take the line 2 subway from Moskovskaya to Nevsky Prospekt

Questions & Answers

The most affordable way to get from Moscow to Saint Petersburg is to rideshare, which costs RUB 1001 and takes 11h 27m.

More details

The quickest way to get from Moscow to Saint Petersburg is to fly and line 2 subway which costs RUB 1900 - RUB 17000 and takes 3h 50m.

More details

Yes, there is a direct train departing from Moskva Kurskaia and arriving at St Petersburg Glavny. Services depart once daily, and operate every day. The journey takes approximately 4h 12m.

More details

The distance between Moscow and Saint Petersburg is 634 km. The road distance is 701.9 km.

Get driving directions

The best way to get from Moscow to Saint Petersburg without a car is to train which takes 4h 12m and costs RUB 1600 - RUB 2800.

More details

The train from Moskva Kurskaia to St Petersburg Glavny takes 4h 12m including transfers and departs once daily.

More details

Moscow to Saint Petersburg train services, operated by Russian Railways (РЖД), depart from Moskva Kurskaia station.

More details

The best way to get from Moscow to Saint Petersburg is to train which takes 4h 12m and costs RUB 1600 - RUB 2800. Alternatively, you can bus, which costs RUB 1100 - RUB 2800 and takes 11h 36m.

Mode details

The quickest flight from Moscow Vnukovo Airport to Pulkovo Airport is the direct flight which takes 1h 15m.

Search flights

Moscow to Saint Petersburg train services, operated by Russian Railways (РЖД), arrive at St Petersburg Glavny station.

More details

Map of how to get from Moscow to Saint Petersburg.
Launch map view
  • Distance: 634.4 km
  • Duration: 4h 12m

What companies run services between Moscow, Russia and Saint Petersburg, Russia?

Russian Railways (РЖД) operates a train from Moskva Kurskaia to St Petersburg Glavny once daily. Tickets cost RUB 1600 - RUB 2800 and the journey takes 4h 12m. Alternatively, Avtovokzaly.ru operates a bus from Moscow Severnye Vorota bus station to Saint Petersburg Bus station every 4 hours. Tickets cost RUB 1000 - RUB 1700 and the journey takes 10h. Ecolines also services this route once daily.

Airlines
Aeroflot Russian Airlines
Website
aeroflot.ru
Flights from Moscow Vnukovo to Pulkovo
Ave. Duration
1h 26m
When
Every day
Estimated price
RUB 1400 - RUB 16000
Flights from Moscow Sheremetyevo to Pulkovo
Ave. Duration
1h 29m
When
Every day
Estimated price
RUB 1300 - RUB 16000
S7 Airlines
Website
s7.ru
Flights from Moscow Domodedovo to Pulkovo
Ave. Duration
1h 40m
When
Every day
Estimated price
RUB 1500 - RUB 16000
Ural Airlines
Website
uralairlines.ru
Flights from Moscow Domodedovo to Pulkovo
Ave. Duration
1h 30m
When
Every day
Estimated price
RUB 1500 - RUB 16000
Alrosa Air Company
Website
alrosa.aero
Flights from Moscow Vnukovo to Pulkovo
Ave. Duration
1h 15m
When
Saturday
Estimated price
RUB 1400 - RUB 16000
UTair Aviation
Website
utair.ru
Flights from Moscow Vnukovo to Pulkovo
Ave. Duration
1h 20m
When
Every day
Estimated price
RUB 1400 - RUB 16000
Nordwind Airlines
Website
nordwindairlines.ru
Flights from Moscow Sheremetyevo to Pulkovo
Ave. Duration
1h 40m
When
Friday and Sunday
Estimated price
RUB 1300 - RUB 16000
Severstal Air Company
Website
severstal-avia.ru
Flights from Moscow Sheremetyevo to Pulkovo via Cherepovets
Ave. Duration
2h 40m
When
Every day
Estimated price
RUB 1800 - RUB 17000
Train operators
Russian Railways (РЖД)
Website
eng.rzd.ru
Train from Moskva Kurskaia to St Petersburg Glavny
Ave. Duration
4h 12m
Frequency
Once daily
Estimated price
RUB 1600 - RUB 2800
Website
https://eng.rzd.ru/en/9446
3rd Class (Platzcart)
RUB 1600 - RUB 2300
2nd Class (Kupé)
RUB 1900 - RUB 2800
Train from Moskva Oktiabrskaia to St Petersburg Glavny
Ave. Duration
3h 44m
Frequency
Hourly
Estimated price
RUB 1600 - RUB 2800
Website
https://eng.rzd.ru/en/9446
3rd Class (Platzcart)
RUB 1600 - RUB 2300
2nd Class (Kupé)
RUB 1900 - RUB 2800
Train from Moscow, Leningradsky Station to St. Petersburg Finlyandskiy Station
Ave. Duration
8h 20m
Frequency
Once daily
Estimated price
RUB 1500 - RUB 2800
Website
https://eng.rzd.ru/en/9446
3rd Class (Platzcart)
RUB 1600 - RUB 2300
2nd Class (Kupé)
RUB 2000 - RUB 2800
Bus operators
Avtovokzaly.ru
Phone
8-800-775-45-73
Email
support@avtovokzaly.ru
Website
avtovokzaly.ru
Bus from Moscow Severnye Vorota bus station to Saint Petersburg Bus station
Ave. Duration
10h
Frequency
Every 4 hours
Estimated price
RUB 1000 - RUB 1700
Schedules at
avtovokzaly.ru
Other operators
BlaBlaCar
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
RUB 1001
Book at
blablacar.co.uk

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 5 incredible day trips from Florence by train, Getting around the Cyclades and 4 stunningly beautiful Philippines islands you need to visit - to help you get the most out of your next trip.

More Questions & Answers

Yes, the driving distance between Moscow to Saint Petersburg is 702 km. It takes approximately 7h 13m to drive from Moscow to Saint Petersburg.

Get driving directions

Alrosa Air Company, UTair Aviation and Aeroflot Russian Airlines offer flights from Moscow Vnukovo Airport to Pulkovo Airport.

Search flights

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.

Read Rome2rio's guide to Blablacar

The best way to get from Moscow to Moscow Vnukovo Airport is to train which takes 37 min and costs RUB 450.

More details