There are 4 ways to get from Semarang to Surakarta by bus, train, car, or taxi
Select an option below to see step-by-step directions and to compare ticket prices and travel times in Rome2Rio's travel planner.
Bus
best- Take the bus from Semarang Krapyak to Solo Terminal Tirtonadibus
1h 42mRp 131,993–170,083Train
cheapest- Take the train from Semarang Poncol Station to Solobalapantrain Joglosemarkerto
1h 49mRp 65,000–320,000Drive 100.3 km
- Drive from Semarang to Surakartacar 100.3 km
1h 26mRp 197,697–285,562Taxi
- Take the taxi from Semarang to Surakartataxi 100.3 km
1h 26mRp 650,000–800,000
Semarang to Surakarta by train
Questions & Answers
The cheapest way to get from Semarang to Surakarta is to bus which costs Rp130000 - Rp170000 and takes 1h 42m.
The fastest way to get from Semarang to Surakarta is to drive which takes 1h 26m and costs Rp190000 - Rp290000.
No, there is no direct bus from Semarang to Surakarta. However, there are services departing from Semarang Krapyak and arriving at Solo Terminal Tirtonadi via . The journey, including transfers, takes approximately 1h 42m.
Yes, there is a direct train departing from Semarang Poncol Station station and arriving at Solobalapan. Services depart five times a day, and operate every day. The journey takes approximately 1h 49m.
The distance between Semarang and Surakarta is 109 km. The road distance is 100.3 km.
The best way to get from Semarang to Surakarta without a car is to bus which takes 1h 42m and costs Rp130000 - Rp170000.
It takes approximately 1h 42m to get from Semarang to Surakarta, including transfers.
Semarang to Surakarta bus services, operated by Kramat Djati, depart from Semarang Krapyak station.
Semarang to Surakarta train services, operated by Kereta API, depart from Semarang Poncol Station.
The best way to get from Semarang to Surakarta is to bus which takes 1h 42m and costs Rp130000 - Rp170000. Alternatively, you can train, which costs Rp65000 - Rp320000 and takes 1h 49m.
What companies run services between Semarang, Indonesia and Surakarta, Indonesia?
Kramat Djati operates a bus from Semarang Krapyak to Solo Terminal Tirtonadi once daily. Tickets cost Rp 60,000–85,000 and the journey takes 1h 36m. Alternatively, Kereta API operates a train from Semarang Poncol Station to Solobalapan 5 times a day. Tickets cost Rp 65,000–320,000 and the journey takes 1h 49m.
- Phone
- 021-121
- [email protected]
- Website
- kai.id
Train from Semarang Poncol Station to Solobalapan
- Ave. Duration
- 1h 49m
- Frequency
- 5 times a day
- Estimated price
- Rp 65,000–320,000
- Schedules at
- kai.id
- Book at
- en.tiket.com
- Economy
- Rp 65,000–320,000
- Business
- Rp 310,000–550,000
- Executive
- Rp 120,000–650,000
- Phone
- 021-769 3000
- [email protected]
- Website
- kramat-djati.com
Bus from Semarang Krapyak to Solo Terminal Tirtonadi
- Ave. Duration
- 1h 36m
- Frequency
- Once daily
- Estimated price
- Rp 60,000–85,000
- Website
- http://www.kramat-djati.com/
- Ave. Duration
- 1h 26m
- Estimated price
- Rp 650,000–800,000
Blue Bird Group
- Phone
- +62246701234
- Website
- bluebirdgroup.com
Grab Taxi
- Website
- grab.com
Want to know more about travelling around the world?
Rome2Rio's Travel Guide series provide vital information for the global traveller. Read our range of informative guides on popular transport routes and companies - including Want to know more about Flixbus?, How to travel India's Golden Triangle, and Which side of Niagara Falls should I choose (and how do I get there)? - to help you get the most out of your next trip.
More Questions & Answers
Semarang to Surakarta bus services, operated by Kramat Djati, arrive at Solo Terminal Tirtonadi station.
Semarang to Surakarta train services, operated by Kereta API, arrive at Solobalapan station.
Yes, the driving distance between Semarang to Surakarta is 100 km. It takes approximately 1h 26m to drive from Semarang to Surakarta.
Book your Semarang to Surakarta train tickets online with 12go.asia.
Book your Semarang to Surakarta bus tickets online with Omio.
There are 279+ hotels available in Surakarta.









