Getting there & away
Jakarta is the main hub for Pelni passenger ships that run all over Indonesia, but no international connections exist. The most direct connection from Singapore is to take a ferry from Singapore to Tanjung Pinang on Pulau Bintan in the Riau archipelago off the Sumatran coast and then take a ship to Jakarta.
Ferries run round the clock between Banyuwangi/Ketapang harbour in East Java and Gilimanuk in Bali. From Ketapang, numerous buses and trains travel to the rest of Java. An easier alternative is to take a through-bus from Denpasar to any major city in Java – these buses include the ferry journey.
Ferries shuttle between the Javanese port of Merak and Bakauheni in southern Sumatra, 24 hours a day. From both ports, regular buses head for the main centres of their respective islands. The easy options are the long-distance buses that run from Jakarta straight through to the main Sumatran destinations such as Medan (48 hours).
Jakarta is Indonesia’s busiest entrance point for international airlines and is the best place to shop around for cheap air tickets. Two of the most popular short-hop international connections are the Jakarta–Singapore and Jakarta–Kuala Lumpur runs, which can cost as little as US$75. Surabaya has a few international flights, as does Solo.