By car
A brand new toll highway called M-11 (Neva) opened in 2019 makes traveling by car or bus from Moscow to St. Petersburg very comfortable. The driving distance is 669 km and it may take around 6 hours with some short stops. The toll rate for a private car is between 2170 and 3200 rub (2022 actual data) and depends on a week day (from Monday to Thursday is cheaper) and also if you have a transponder.
By bus
It is not the most popular way to travel between Moscow and St. Petersburg but definitely the cheapest one. The tickets rate starts from 850 rub per person and the whole trip takes around 9 – 11 hours.
By train
“Sapsan” is a modern and comfortable high speed train that goes up to 250 km/h (155 mph). There are plenty of trains starting from Lenningradkiy Railway Station and arriving to Moskovskiy Railway Station in St. Petersburg. The journey will take from 3 hours 40 minutes to 4 hours with tickets around 2500 – 5500 rub.
Another nice option is to take a night train. Some passengers prefer a modern double decker train, while others go for romantic and classic trains like “Krasnaya Strela” (Red Arrow).
By plane
There are over 30 direct flights that operate between Moscow and St. Petersburg every day. You may choose one of 3 Moscow airports (SVO, VKO or DME), they all fly to LED (“Pulkovo”) airport in St. Petersburg. The flight time is around 1 hour and the tickets start from 1500 rub.
OUR PICK:
For all of our clients we recommend “Sapsan” train as a preferred option. Apart of being very comfortable fast and reasonably priced you may see Russian country side scenery.