The distance between Surabaya to Semarang City is 312 Km by road. You can also find the distance from Surabaya to Semarang City using other travel options like bus, subway, tram, train and rail. Apart from the trip distance, refer
Directions from Surabaya to Semarang City for road driving directions!