• Our partners include:

  • RailEurope
  • Deutsche Bahn
  • Trenitalia
  • SNCF
  • Flixbus
  • RENFE
  • Ouibus
  • BlaBlaCar
  • Booking.com
  • Skyscanner

There are 8 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 option

Train  •  3 h 55 min

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

$17 - $40

7 alternative options

Bus Tiaga  •  11 h 9 min

  1. Take the bus from Paveletsky Station to Saint Petersburg

$19 - $24

Bus Avtovokzaly.ru  •  11 h 39 min

  1. Take the bus from Rechnoy Vokzal to Saint Petersburg Bukharestskaya

$19 - $27

Rideshare  •  11 h 27 min

  1. Take the rideshare from Moscow to Saint Petersburg 448.7 miles

$18

Drive  •  10 h 44 min

  1. Drive from Moscow to Saint Petersburg 446.8 miles

$40 - $65

Fly from Moscow Sheremetyevo, line 2 Metro  •  3 h 46 min

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

$38 - $248

Fly from Moscow Domodedovo, line 2 Metro  •  3 h 54 min

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

$37 - $168

Fly from Moscow Vnukovo, line 2 Metro  •  4 h 29 min

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

$37 - $230

Questions & Answers

The cheapest way to get from Moscow to Saint Petersburg is to rideshare which costs RUB 1179 and takes 11 h 27 min.

More details

The quickest way to get from Moscow to Saint Petersburg is to fly and line 2 Metro which costs RUB 2500 - RUB 17000 and takes 3 h 46 min.

More details

Yes, there is a direct bus departing from Paveletsky Station station and arriving at Saint Petersburg. Services depart four times a week. The journey takes approximately 11 h 9 min.

More details

Yes, there is a direct train departing from Moskva Oktiabrskaia and arriving at St Petersburg Glavny. Services depart hourly, and operate every day. The journey takes approximately 3 h 55 min.

More details

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

Get driving directions

The best way to get from Moscow to Saint Petersburg without a car is to train which takes 3 h 55 min and costs RUB 1100 - RUB 2600.

More details

The train from Moskva Oktiabrskaia to St Petersburg Glavny takes 3 h 55 min including transfers and departs hourly.

More details

Moscow to Saint Petersburg bus services, operated by Tiaga, arrive at Paveletsky Station.

More details

Moscow to Saint Petersburg train services, operated by Russian Railways (RZhD), depart from Moskva Oktiabrskaia station.

More details

The best way to get from Moscow to Saint Petersburg is to train which takes 3 h 55 min and costs RUB 1100 - RUB 2600. Alternatively, you can bus, which costs RUB 1200 - RUB 1600 and takes 11 h 9 min.

Mode details

Map of how to get from Moscow to Saint Petersburg.
Launch map view
  • Distance: 396.5 miles
  • Duration: 3 h 55 min

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

Russian Railways (RZhD) operates a train from Moscow to Saint Petersburg hourly. Tickets cost $17 - $40 and the journey takes 3 h 55 min. Alternatively, Tiaga operates a bus from Moscow to Saint Petersburg 4 times a week. Tickets cost $19 - $24 and the journey takes 11 h 9 min.

Airlines
Aeroflot Russian Airlines
Website
aeroflot.ru
Flights from Moscow Sheremetyevo to Pulkovo
Ave. Duration
1 h 26 min
When
Every day
Estimated price
$45 - $250
Flights from Moscow Vnukovo to Pulkovo
Ave. Duration
1 h 25 min
When
Every day
Estimated price
$27 - $270
S7 Airlines
Website
s7.ru
Flights from Moscow Domodedovo to Pulkovo
Ave. Duration
1 h 38 min
When
Every day
Estimated price
$29 - $210
Nordwind Airlines
Website
nordwindairlines.ru
Flights from Moscow Sheremetyevo to Pulkovo
Ave. Duration
1 h 22 min
When
Every day
Estimated price
$35 - $220
Pegas Fly
Website
pegasfly.com
Flights from Moscow Sheremetyevo to Pulkovo
Ave. Duration
1 h 20 min
When
Every day
Estimated price
$40 - $300
RusLine
Website
rusline.aero
Flights from Moscow Vnukovo to Pulkovo
Ave. Duration
1 h 25 min
When
Every day
Estimated price
$160 - $290
UTair Aviation
Website
utair.ru
Flights from Moscow Vnukovo to Pulkovo
Ave. Duration
1 h 28 min
When
Every day
Estimated price
$30 - $270
Pobeda Airlines LLC
Website
pobeda.aero
Flights from Moscow Vnukovo to Pulkovo
Ave. Duration
1 h 26 min
When
Every day
Estimated price
$45 - $140
Yamal Airlines
Website
yamal.aero
Flights from Moscow Domodedovo to Pulkovo
Ave. Duration
1 h 15 min
When
Monday, Wednesday, Thursday, Friday and Sunday
Estimated price
$110 - $600
Alrosa Air Company
Website
alrosa.aero
Flights from Moscow Domodedovo to Pulkovo
Ave. Duration
1 h 20 min
When
Saturday
Estimated price
$50 - $360
NordStar
Website
nordstar.su
Flights from Moscow Domodedovo to Pulkovo
Ave. Duration
1 h 40 min
When
Wednesday and Sunday
Estimated price
$50 - $250
Ural Airlines
Website
uralairlines.com
Flights from Moscow Domodedovo to Pulkovo
Ave. Duration
1 h 45 min
When
Every day
Estimated price
$35 - $270
Train operators
Bus operators
Tiaga
Website
tiaga34.ru
Bus from Paveletsky Station to Saint Petersburg
Ave. Duration
11 h 9 min
Frequency
4 times a week
Estimated price
$19 - $24
Schedules at
tiaga34.ru
Avtovokzaly.ru
Phone
8-800-775-45-73
Email
support@avtovokzaly.ru
Website
avtovokzaly.ru
Bus from Rechnoy Vokzal to Saint Petersburg Bukharestskaya
Ave. Duration
10 h
Frequency
Once daily
Estimated price
$17 - $25
Schedules at
avtovokzaly.ru
Other operators
BlaBlaCar

A ridesharing platform with 40 million users, Blablacar gives you access to destinations without worrying about on-the-road chaos. The basic idea is that you carpool with locals who are already planning to drive your route and have space in their car. With some flexibility you’ll get to your destination – often faster and cheaper than other means. On the website or app, enter your departure and arrival points and your date of travel, sift through the profiles of drivers who’ve posted pre-planned drives and find one whose timing and preferences match yours. Request to join the ride, wait be accepted, and pay your share of the set price.

Rome2rio's guide to BlaBlaCar
Contact Details
Website
blablacar.com
Rideshare from Moscow to Saint Petersburg
Ave. Duration
11 h 27 min
Frequency
5 times a day
Estimated price
$18
Book at
blablacar.co.uk

Want to know more about travelling around Russia

Rome2rio's Travel Guide series provide vital information for the global traveller. Filled with useful and timely travel information, the guides answer all the hard questions - such as 'How do I buy a ticket?', 'Should I book online before I travel? ', 'How much should I expect to pay?', 'Do the trains and buses have Wifi?' - to help you get the most out of your next trip.

More Questions & Answers

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

Search flights

Moscow to Saint Petersburg bus services, operated by Tiaga, arrive at Saint Petersburg station.

More details

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

More details

Yes, the driving distance between Moscow to Saint Petersburg is 715 km. It takes approximately 10 h 44 min to drive from Moscow to Saint Petersburg.

Get driving directions

Nordwind Airlines, Pegas Fly and Aeroflot Russian Airlines offer flights from Moscow Sheremetyevo Airport to Pulkovo Airport.

Search flights

There are 8040+ hotels available in Saint Petersburg. Prices start at $27 USD per night.

More details

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 Sheremetyevo Airport is to Aeroexpress which takes 35 min and costs RUB 420.

More details