Rome2Rio

How to get fromToronto to Johannesburgby plane, bus, or train

Find Transport to Johannesburg

See all options

There are 7 ways to get from Toronto to Johannesburg by 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. Fly Toronto Island Airport to Johannesburg International Airport

    best
    1. Fly from Toronto Island Airport (YTZ) to Johannesburg International Airport (JNB)plane plane YTZ - JNB
    21h 24m
    R 14,450–20,726
  2. Bus to Buffalo Niagara International Airport, fly to Johannesburg International Airport

    cheapest
    1. Take the bus from Toronto to Buffalobus bus
    2. Fly from Buffalo Niagara International Airport (BUF) to Johannesburg International Airport (JNB)plane plane BUF - JNB
    28h 37m
    R 7,806–26,455
  3. Fly Toronto Pearson International Airport to Johannesburg International Airport

    1. Fly from Toronto Pearson International Airport (YYZ) to Johannesburg International Airport (JNB)plane plane YYZ - JNB
    22h 55m
    R 8,844–14,655
  4. Bus, train to Rochester, fly to Johannesburg International Airport

    1. Take the bus from Union Stn Bus Terminal, 81 Bay St at Lakeshore Blvd, 2nd Floor to Bus Terminalbus bus
    2. Take the train from Niagara Falls Amtrak Station to Rochestertrain train
    3. Fly from Rochester (ROC) to Johannesburg International Airport (JNB)plane plane ROC - JNB
    28h 3m
    R 11,362–37,857
  5. Fly Toronto Island Airport to Lanseria International Airport, train

    1. Fly from Toronto Island Airport (YTZ) to Lanseria International Airport (HLA)plane plane YTZ - HLA
    2. Take the train from Pretoria to Parktrain train
    25h 55m
    R 10,447–33,601
  6. Fly Toronto Pearson International Airport to Lanseria International Airport, train

    1. Fly from Toronto Pearson International Airport (YYZ) to Lanseria International Airport (HLA)plane plane YYZ - HLA
    2. Take the train from Pretoria to Parktrain train
    25h 51m
    R 10,017–31,363
  7. Train, train to Cleveland-Hopkins International Airport, fly to Johannesburg International Airport

    1. Take the train from Toronto Union Station to Buffalotrain train
    2. Take the train from Buffalo Depew Station to Cleveland Amtraktrain train
    3. Fly from Cleveland-Hopkins International Airport (CLE) to Johannesburg International Airport (JNB)plane plane CLE - JNB
    30h 1m
    R 11,706–36,113

Toronto Island Airport (YTZ) to Johannesburg International Airport (JNB) flights

Calendar22Weekly Planes
Duration22h 20mAverage Duration
TicketR 6,638Cheapest Price
See schedules

Comparing Your Travel Options

What companies run services between Toronto, ON, Canada and Johannesburg, South Africa?

Porter Airlines, United Airlines, and two other airlines fly from Toronto Island Airport (YTZ) to Johannesburg International Airport (JNB) 3 times a day.

Airlines
Train operators
Bus operators

Want to know more about travelling around South Africa

Rome2Rio's Travel Guide series provide vital information for the global traveller. Filled with useful and timely travel information, the guides answer all the hard questions - such as 'How do I buy a ticket?', 'Should I book online before I travel? ', 'How much should I expect to pay?', 'Do the trains and buses have Wifi?' - to help you get the most out of your next trip.

Related travel guides

Need to know: Greyhound

Read the travel guideNeed to know: Greyhound