Rome2Rio

How to get fromJohor Bahru to Semarangby ferry, plane, bus, or train

Find Transport to Semarang

See all options

There are 6 ways to get from Johor Bahru to Semarang by ferry, plane, bus, or train

Select an option below to see step-by-step directions and to compare ticket prices and travel times in Rome2Rio's travel planner.

  1. Ferry to Hang Nadim International Airport, fly

    best
    1. Take the ferry from Berjaya Waterfront Ferry Terminal Johor Bahru to Batam Centreferry ferry
    2. Fly from Hang Nadim International Airport (BTH) to Ahmad Yani (SRG)plane plane BTH - SRG
    5h 23m
    Rp 2,490,578–3,430,578
  2. Ferry, bus

    cheapest
    1. Take the ferry from HarbourFront to Batam Harbour Bay Ferry Terminalferry ferry
    2. Take the ferry from Batu Ampar to Port of Tanjung Priokferry ferry
    3. Take the bus from DAMRI Bus Station Jakarta to Semarangbus bus
    2d
    Rp 1,094,971–1,816,329
  3. Bus to Singapore Changi Airport, fly

    1. Take the bus from Woodlands Check Point to Expo Stnbus bus
    2. Fly from Singapore Changi Airport (SIN) to Ahmad Yani (SRG)plane plane SIN - SRG
    5h 12m
    Rp 2,657,793–5,186,561
  4. Fly from Senai International Airport

    1. Fly from Senai International Airport (JHB) to Ahmad Yani (SRG)plane plane JHB - SRG
    7h 42m
    Rp 1,811,017–6,141,390
  5. Ferry, train

    1. Take the ferry from Singapore Harbour Front to Tanjung Balai Karimunferry ferry
    2. Take the ferry from Tanjung Balai Karimun to Port of Tanjung Priokferry ferry
    3. Take the train from Pasar Senen to Semarang Poncoltrain train
    2d 5h
    Rp 1,412,992–2,206,000
  6. Ferry, bus via Tanjung Balai

    1. Take the ferry from Singapore Harbour Front to Tanjung Balai Karimunferry ferry
    2. Take the ferry from Tanjung Balai Karimun to Port of Tanjung Priokferry ferry
    3. Take the bus from Jakarta Kampung Rambutan Bus Station to Semarangbus bus
    2d 10h
    Rp 1,342,992–2,256,000

Hang Nadim International Airport (BTH) to Ahmad Yani (SRG) flights

Calendar35Weekly Planes
Duration3h 57mAverage Duration
TicketRp 1,660,882Cheapest Price
See schedules

Questions & Answers

What companies run services between Johor Bahru, Malaysia and Semarang, Indonesia?

AirAsia, Malaysia Airlines, and three other airlines fly from Senai International Airport (JHB) to Ahmad Yani (SRG) 3 times a day.

Airlines
Train operators
Bus operators
Ferry operators

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 How to travel India's Golden Triangle, How to get from JFK to New York City, and Why you should take the train in the US - to help you get the most out of your next trip.