
Malang sits about 95km south of Surabaya at around 450m elevation, which makes it several degrees cooler and a standing weekend destination for Surabaya residents. The train covers it in roughly two hours.
The line runs south across the flat delta country through Sidoarjo and Bangil, then climbs steadily through Lawang and Singosari with Mount Arjuno visible on the right heading south. It is a pleasant short run rather than a spectacular one, and at local-train fares there is no reason to take a car.
Which trains run this route: the local Commuter Line trains, the Penataran and the Dhoho, are the ones most people use. They run a loop between Surabaya, Malang, Blitar and Kertosono in opposite directions, so some trains from Surabaya Kota and Gubeng head straight up to Malang while others go the long way round via Kertosono and Blitar; check the arrival time before you board. The Tumapel covers the same corridor. The Jayabaya from Jakarta Pasar Senen comes along the north coast, calls at Pasarturi and Gubeng and finishes at Malang, and the Arjuno Ekspres, an eksekutif-only train introduced by KAI Daop 8 in 2021, links Gubeng and Malang with stops only at Sidoarjo, Bangil and Lawang.
The Gajayana and the other Malang-Jakarta trains via Yogyakarta or Semarang Tawang do not come through Surabaya: they reach Malang from the west via Kediri and Blitar.
Malang station is central and walkable to the colonial-era town centre. From Malang, onward connections run to Blitar, east to Banyuwangi and to the Bromo access points. For the return trip, see Malang to Surabaya.
Journey times vary by service and season. Confirm against current schedules before booking.
Indicative bands only. KAI adjusts fares by season and subclass, so treat these as a guide to the order of magnitude rather than a quote.
© Indonesia By Train 2026. All rights reserved