A journey across Java’s rail network offers a blend of history, scenery, and cultural discovery, with modern upgrades complementing one of Southeast Asia’s most storied train systems.
My first rail journey across the Indonesian island of Java was on Christmas Day in 1989, when I boarded a train from Yogyakarta for what I thought would be Jakarta. The journey started well, with a reasonably small but comfortable seat in the fan-cooled carriage, along with a handful of other passengers.
As the train proceeded westward across Indonesia’s (and the world’s) most populous island, it made regular stops for passengers to board. Sadly, no one alighted, and before long, the carriage became very congested. Windows were opened, the already cramped seats began to be shared, and spare space soon became non-existent. I remember food vendors squeezing through the carriage, followed by a musical troupe performing in an impossibly tight space. After a few hours, it became unbearably stifling, and I eventually stepped off at a station in a small town beyond Bandung. The following day, I completed my journey by bus.

Fast forward to the 21st century, and things have, unsurprisingly, changed. Passenger numbers have grown, and while the rail infrastructure has improved, it continues to operate under constant pressure from demand.
More recently, a high-speed line to Bandung has been introduced alongside the main Jakarta corridor. As one of Southeast Asia’s first true high-speed railways, it offers a glimpse of what similar projects, such as the frequently discussed Kuala Lumpur–Singapore line, could look like in the future.

Because few travellers use Asian trains for anything beyond simply travelling between destinations, I have detailed some attractions along the way for those who want to use the train to explore parts of Java on an extended rail holiday. Adventurous travellers may even want to consider travelling easterly from Jakarta to Banyuwangi and then taking a ferry from Ketapang to Gilimanuk in the westernmost parts of Bali.
RAIL HISTORY
Indonesia’s first railway, a 25 km stretch from Semarang to Tanggung, opened in 1867 during the Dutch East Indies period. Although the country spans more than 17,000 islands, rail networks today are largely confined to Java and Sumatra, with discussions ongoing about expansion to Sulawesi and Kalimantan.
Much of the current 6,000 km network was developed by Dutch colonial authorities between 1867 and 1945. Following independence in 1945 and full sovereignty in 1949, the system was nationalised in 1958 as Indonesian State Railways, later reorganised and corporatised as PT Kereta Api Indonesia.

Java’s rail network stretches from Merak in the northwest to Banyuwangi in the east. Two principal corridors dominate: the northern line from Jakarta to Surabaya, and the southern route via Bandung and Yogyakarta. Early routes evolved over time, including the 1906 opening of a shorter line via Cikampek and Purwakarta to Bandung. Some sections, such as the Sukabumi–Bandung line, have faced interruptions, though partial services have since resumed.
While diesel locomotives replaced steam in 1984, heritage steam engines remain in operation at the Ambarawa Railway Museum and on select plantation lines.

JAKARTA TO YOGYAKARTA
The journey from Jakarta to Yogyakarta takes about 8.5 hours, linking the capital with the country’s cultural heartland. Known locally as “Jogja,” Yogyakarta offers a strong contrast to Jakarta’s urban intensity. Some trains continue to Solo (Surakarta) or onward to Surabaya.
Day trains are ideal for those interested in the scenery, while overnight services provide a practical alternative for travellers looking to save on accommodation.
Departures are split between Jakarta Gambir Station, serving mostly Eksekutif Class trains, and Jakarta Pasar Senen, which handles more Ekonomi services. Those with an interest in architecture may also wish to visit Jakarta Kota Station, a 1929 Art Deco landmark located in the historic Kota district.

BOGOR DEVIATION
Train enthusiasts may want to deviate to Bogor, located 60 km south of Jakarta. Bogor has long been a seat of power and also a relaxing retreat for the former Dutch and British colonialists. While only a modest 290 m above sea level, average temperatures hover around 25˚C, making Bogor notably cooler than the capital. In 1745, the Dutch Governor-General built a palace here that became the official residence for subsequent Governors-General. Sir Stamford Raffles lived in it when he was the British representative in Java, and his wife is buried in the grounds of what is now the Presidential Palace.
Apart from peering into the expansive palace grounds, Bogor’s big attractions are its cool weather and the impressive Kebun Raya Botanical Gardens extending over 87 hectares. The Dutch did the initial planning of the gardens, and they were completed by British botanists sent from Kew Gardens. The gardens house over 3,000 plant species and are arguably the region’s finest. Bogor has a bustling market and numerous factory outlets selling discounted apparel. These outlets lure the locals at weekends and on public holidays, but train travellers will avoid most of the traffic congestion.

Those looking for an off-train deviation and a more relaxed pace of life should continue eastward to the refreshingly cool resort town near Puncak Pass at 1,500 m altitude. Puncak is located half-way between Jakarta and Bandung, and tea plantations and other temperate crops thrive in the misty mountains. From here, travellers who are ultimately heading to the east can return to Bogor and Jakarta for the train or catch a bus to Cianiur to rejoin the train for Bandung.

JAVA RAIL OPTIONS
There are several other rail journeys across Java to consider. A northern line extends from Jakarta to Surabaya via Semarang. The other, via Bandung, heads to Yogyakarta and then onto Solo and Surabaya. From Surabaya, trains travel south to Malang or east to Banyuwangi. Train enthusiasts could spend many days on the rails and at the key tourist destinations along their journey.

HIGH-SPEED RAIL TO BANDUNG
While regular rail services to Jakarta and Bandung still operate, the recently opened high-speed service is capturing all the attention. A joint Indonesian and Chinese company called Kereta Cepat Indonesia China (KCIC) built the railway. The service can operate at speeds of up to 350 km/hour, with the travelling time to Bandung reduced from three hours to just 46 minutes. This is the good news, but the bad news is that the terminus stations are some distance from the city centres of each, and travelling to both is tedious.
Bandung is Indonesia’s third-largest city and the capital of West Java Province. Being reasonably close to Jakarta, it is popular with city folk at weekends, especially for shopping at branded factory outlets. There are an interesting number of Dutch colonial buildings, especially those of Art Deco or New Indies architectural style, set amongst its ever-rising skyline.

TO YOGYAKARTA
From Bandung, travellers can take a selection of intercity trains to Yogyakarta. The most popular is the Argo Wilis, the premier express train service on Java’s southern line. This train departs in the morning and passes through picturesque mountains, with my tip being a seat on the left for the finest views. The scenic sections first appear as the train enters Garut, with the line perched above a valley against a backdrop of volcanoes. The train proceeds slowly because of numerous sharp curves and steep gradients.
Beyond Tasikmalaya and all the way to Yogyakarta, views of the mountain give way to scenic rural flatlands interspersed with hilly terrain and volcanoes such as Mount Merapi in the distance.
Yogyakarta is the historic capital of a special economic region and a centre for classical Javanese culture and arts, including textiles (batik), dance, art, music (gamelan), wayang kulit (shadow puppetry), and silversmithing. There are several heritage buildings, including the Kraton (which includes the Sultan’s Palace) and Dutch colonial structures, while Jalan Malioboro is Yogyakarta’s commercial and retail centre.

The UNESCO World Heritage Sites of Borobudur (Buddhist) and Prambanan (Hindu) are located nearby. Built 1,200 years ago, Borobudur was seemingly abandoned or partially buried under volcanic ash. A massive reconstruction was completed in 1983, and now its terraces, bell-shaped stupas, and religious images are protected at the world’s largest Buddhist site. Watching the sun rise over Borobudur from behind the surrounding volcanic peaks is a rite of passage for many tourists to this area.

IT’S IN THE DETAIL
As purchasing rail tickets online presents some problems for non-Bahasa Indonesia speakers (and in many cases, only Indonesian credit cards can be used), buying tickets is best done via Tiket.com. Once in the country, tickets may be purchased at railway stations and also from touch-screen terminals installed in convenience stores such as Indomaret, where there’s usually someone to offer helpful assistance.
Important station codes for the main routes are Jakarta Gambir (GMR), Jakarta Pasar Senen (PSE), Bogor (BOO), Bandung (BD), Yogyakarta Tuju (YK), and Solo Kota (STA).

Most carriages are air-conditioned, and the seating varies across the carriage, but is mostly four seats, two on either side of an aisle (Eksekutif Luxury has just two seats and Ekonomi has five seats). Eksekutif Luxury seats are similar to airline business class and available on some trains, including those from Jakarta to Yogyakarta and Jakarta to Surabaya. Other classes include Eksekutif (individual reclining seat), Bisnis (non-reclining seats, four across), and Ekonomi (non-reclining, but newer carriages have reclining seats). Newer trains tend to be over-air-conditioned, and older, slower trains are under-air-conditioned, so be prepared with the appropriate clothing.
Seeking advice and assistance from specialist train touring operators like Indonesian Railway Tour is highly recommended, especially for dedicated railway enthusiasts in search of the unique and unusual features of Java’s rail network.
TRAVEL CONTACTS
Indonesian Railway Tour (T: +62 822 3355-8301, E: bagus70@yahoo.com, or masbagusadventure.wordpress.com) and Tiket.com (en.tiket.com/kereta-api).


