Moscow to St Petersburg by train Find train times and tickets

  • First train
    05:40
  • Last train
    23:55
  • Avg changes
    0
  • Fastest journey
    3hr 30m

Travelling from Moscow to St Petersburg by train

Fast trains from Moscow to St Petersburg take around 3 hours and 30 minutes, covering a distance of approximately 629 kilometres. There are frequent services on the rail route between Moscow and St Petersburg.

Are there direct trains from Moscow to St Petersburg?

Direct trains from Moscow to St Petersburg have been found.

We usually find around 25 direct trains on the route from Moscow to St Petersburg every weekday.

Trains are typically more frequent on weekends, when we found around 27 departures.

How long is the train journey from Moscow to St Petersburg?

The Moscow to St Petersburg train travel time is normally about 3 hours and 30 minutes, whatever time you make the journey.

What are the Moscow to St Petersburg train times and schedule?

On weekdays the earliest direct train to St Petersburg is usually scheduled to depart Moscow around 05:40 and the last train is around 23:55. This is the same at the weekend.

When to book Moscow to St Petersburg train tickets?

Trains in Russia usually open for booking around 0 days in advance. If booking is not yet open for your dates then you can set a booking alert to receive an email on the day that the cheapest tickets are released for your journey from Moscow to St Petersburg by train.

Which train companies operate between Moscow and St Petersburg?

More than one train company operates on the route from Moscow to St Petersburg, so you’ll be travelling with one or more of the following rail operators:

  • InterCity
  • Intercités

You can check which train you’ll be travelling on by looking for the train name in search results.

Find journey information for St Petersburg to Moscow

Search accommodation in St Petersburg

Child and youth passengers

The definition of "Child" and "Youth" varies by country and rail operator. This is why we ask for the age of young passengers.

Sometimes children below a certain age can travel without a seat for free. If you want to guarantee a seat for child passengers, enter '6' as the age of the child.

Read more about child and youth passenger ages. See also youth discounts and railcards.

Log in / Register

  1. We'd love to send you (occasional) emails with travel tips, sales and special offers. You can change your preferences at any time.
  1. By registering you agree with our privacy policy.