How to travel from Semarang to Surakarta, Indonesia

The distance between Semarang and Surakarta is around 100km (62 miles) and the quickest way to get there is to take a taxi which takes around 1h 20m.

3 routes found

We've found 3 different ways to get from Semarang to Surakarta by train, taxi and car. The recommended routes, which include information on duration, ticket price, and level of difficulty, can be found below.

👋 Also check out SurakartaSemarang if you're planning a return trip.

💰 Cheapest
1
train
+

Train

Take the train to Solo Jebres.

  • Duration2h 10m
  • Departsevery 4 hours
  • Typical cost
    IDR 149,780($10)
Operated by

Kereta API

🚀 Fastest
2
taxi
+

Taxi

Take a taxi to Surakarta.

  • Duration1h 20m
  • Departson demand
  • Typical cost
    IDR 524,230($35)
Operated by

Grab Taxi

+ 2 others
3
car
+

Drive

Drive to Surakarta.

  • Duration1h 20m
  • Distance100km (62 miles)
Get turn-by-turn directions

Frequently asked questionsabout travel between Semarang and Surakarta

There are several options for getting from Semarang to Surakarta by train, taxi and car. The cheapest option is to take the train which costs around IDR 149,780 ($10) and will take around 2h 10m. If you need to get there more quickly, you can take a taxi and arrive in approximately 1h 20m, though it is a bit more costly at approximately IDR 524,230 ($35).

The distance between Semarang and Surakarta is around 100km (62 miles). In a direct line (as the crow flies), the distance is 78km (49 miles)

It takes around 2h 10m to get from Semarang and Surakarta by train. If you are travelling by car it will take around 1h 20m to drive there.

The quickest way to get from Semarang to Surakarta is to take a taxi which takes around 1h 20m and will set you back approx IDR 524,230 ($35).

The cheapest way to travel between Semarang and Surakarta, if you exclude driving, is to take the train which will typically cost around IDR 149,780 ($10) for a standard one-way ticket.

Train travel

Yes there is a train service that runs between Semarang and Surakarta. It typically takes around 2h 10m and departs 4 times a day.

Yes there is a direct train service that runs between Semarang and Surakarta with no changeovers required. The train runs 4 times a day and takes 2h 10m.

Kereta API run train services between Semarang and Surakarta. Trains depart 4 times a day and will take around 2h 10m, however, this may vary depending on the particular service and whether it runs express or stops all stations.

Bus travel

Sorry, looks like there is no bus service that runs between Semarang and Surakarta. We recommend that you take a taxi to Surakarta. instead which will take 1h 20m.

Flights and Airlines

It doesn't look like you can fly directly from Semarang to Surakarta. We recommend that you take the train to Solo Jebres. instead which will take 2h 10m.

The closest major airport to Surakarta is Adisumarmo International Airport (SOC) (SOC) which is approximately 11km (7 miles) from Surakarta. Adisucipto Airport (JOG) (JOG) and Achmad Yani International Airport (SRG) (SRG) are also nearby and might be a better alternative airport depending on where you are flying from.

Drive yourself

Yes it is possible to drive from Semarang and Surakarta. The distance is around 100km (62 miles) by road and it will take around 1h 20m in normal traffic conditons.

If you don't have a car, the easiest way to get from Semarang to Surakarta is to take the train which takes, on average, 2h 10m and will usually cost around IDR 149,780 ($10).

How do I get from Semarang to Surakarta

Compare travel optionsbetween Semarang and Surakarta

Transport options from Semarang to Surakarta
Transport optionDurationCostFrequencyDistance
Train
2h 10m
IDR 149,780($10)
every 4 hours110km (69 miles)
Taxi
1h 20m
IDR 524,230($35)
on demand100km (62 miles)
Drive
1h 20m
IDR 179,735($12)
on demand100km (62 miles)

Top Carriersoperating between Semarang and Surakarta

Bus companies

Train operators

Airports near Surakarta

The following major airports near Surakarta offer regular flights to various popular destinations within Indonesia and internationally.

SOC
Adisumarmo International Airport (SOC)
International Airport
Distance
11km (7 miles) from Surakarta
JOG
Adisucipto Airport (JOG)
International Airport
Distance
49km (31 miles) from Surakarta
SRG
Achmad Yani International Airport (SRG)
International Airport
Distance
82km (51 miles) from Surakarta