Flight to Belgrade
Saint Petersburg → Belgrade · about 2h 10m in the air · ~€80–300
Flight to Ferno
Belgrade → Ferno · about 1h 20m in the air · ~€60–190
Bus to Milan
Ferno → Milan · about 1h 15m · ~€7–15
Saint Petersburg → Milan
Russia to Italy · 2 borders · Where else can you go from Saint Petersburg?
Your route
RecommendedChoose a line to change transport
Scroll for the full route →Your itinerary
About the trip from Saint Petersburg to Milan
Saint Petersburg (Russia) and Milan (Italy) are 2,130 km (1,324 mi) apart in a straight line. The way we suggest is by flight and bus, via Belgrade and Ferno: about 9h 15m door to door with 2 changes, for ~€147–505 per person. The trip crosses 2 borders, so check what papers you need.
Step by step
- Flight from Saint Petersburg to Belgrade: about 2h 10m in the air, 1,806 km, ~€80–300
- Flight from Belgrade to Ferno: about 1h 20m in the air, 921 km, ~€60–190
- Bus from Ferno to Milan: about 1h 15m, 38 km, ~€7–15
Every route we know
- Flight + Bus, via Belgrade and Ferno: about 9h 15m, 2 changes, ~€147–505
- Flight + Train, via Belgrade and Bologna: about 9h 25m, 2 changes, ~€140–505
Questions
How long does it take to get from Saint Petersburg to Milan?
About 9h 15m door to door by flight and bus, via Belgrade and Ferno, including time for changes and airports.
How much does it cost to travel from Saint Petersburg to Milan?
~€147–505 per person for the route we suggest. These are estimates from travel-guide prices and published tariffs, not quotes: check the operator for today's fare.
Can you get from Saint Petersburg to Milan without flying?
Not in our data: every route we know includes a flight.
Times are rough door-to-door times, with time to change and to get through airports included. We don't have timetables, and fares are rough estimates, not quotes: check Google Maps or the operator before you travel.