Trains to cities in South Africa
The stations on record and the rail routes to nearby cities with estimated times, city by city, from public data.
70 cities in South Africa have a trains page: the stations on record and the rail routes to nearby cities with estimated times. Largest first.
| City | Region | Population | Stations on record |
|---|---|---|---|
| Johannesburg | Gauteng | 9,418,183 | 2 |
| Cape Town | Western Cape | 4,772,846 | — |
| Durban | KwaZulu-Natal | 3,338,026 | — |
| Pretoria | Gauteng | 2,112,693 | 1 |
| Soweto | Gauteng | 1,695,047 | — |
| Gqeberha | Eastern Cape | 1,050,078 | 1 |
| Soshanguve | Gauteng | 872,309 | — |
| Pietermaritzburg | KwaZulu-Natal | 839,327 | 1 |
| Evaton | Gauteng | 725,468 | — |
| Benoni | Gauteng | 605,344 | — |
| Bloemfontein | Free State | 556,637 | 1 |
| Thembisa | Gauteng | 511,655 | — |
| East London | Eastern Cape | 478,676 | — |
| Vereeniging | Gauteng | 474,681 | — |
| Boksburg | Gauteng | 445,168 | — |
| Welkom | Free State | 431,944 | — |
| Newcastle | KwaZulu-Natal | 404,838 | — |
| Krugersdorp | Gauteng | 378,821 | — |
| Rustenburg | North West | 373,695 | — |
| Emalahleni | Mpumalanga | 373,403 | — |
| Randburg | Gauteng | 337,053 | — |
| Roodepoort | Gauteng | 326,416 | 8 |
| Botshabelo | Free State | 309,714 | — |
| Brakpan | Gauteng | 305,692 | — |
| Kariega | Eastern Cape | 291,052 | 1 |
| Polokwane | Limpopo | 272,461 | — |
| Germiston | Gauteng | 255,863 | — |
| Richards Bay | KwaZulu-Natal | 252,968 | — |
| Vanderbijlpark | Gauteng | 246,754 | — |
| Paarl | Western Cape | 236,910 | — |
| Centurion | Gauteng | 236,580 | — |
| Klerksdorp | North West | 227,039 | — |
| Somerset West | Western Cape | 225,289 | — |
| Mdantsane | Eastern Cape | 205,504 | — |
| Middelburg | Mpumalanga | 196,263 | — |
| George | Western Cape | 188,580 | — |
| Carletonville | Gauteng | 182,304 | — |
| Potchefstroom | North West | 178,285 | — |
| Mthatha | Eastern Cape | 164,848 | — |
| KwaDukuza | KwaZulu-Natal | 161,177 | — |
| Westonaria | Gauteng | 156,831 | — |
| Etwatwa | Gauteng | 151,866 | — |
| Vryheid | KwaZulu-Natal | 150,012 | — |
| Pinetown | KwaZulu-Natal | 144,026 | — |
| Ladysmith | KwaZulu-Natal | 143,446 | — |
| eMbalenhle | Mpumalanga | 142,443 | — |
| Kimberley | Northern Cape | 142,089 | 1 |
| Nigel | Gauteng | 140,644 | — |
| Mpumalanga | KwaZulu-Natal | 140,121 | — |
| Bhisho | Eastern Cape | 137,287 | — |
| Sasolburg | Free State | 135,828 | — |
| Randfontein | Gauteng | 133,654 | — |
| Worcester | Western Cape | 127,597 | — |
| Ntuzuma | KwaZulu-Natal | 125,394 | — |
| Virginia | Free State | 122,502 | — |
| Brits | North West | 122,497 | — |
| Alberton | Gauteng | 121,536 | — |
| Queenstown | Eastern Cape | 118,599 | — |
| Kroonstad | Free State | 117,152 | 1 |
| Somaroboro | Mpumalanga | 114,369 | — |
| Hammanskraal | North West | 112,950 | — |
| Mabopane | Gauteng | 110,972 | — |
| Mbombela | Mpumalanga | 110,159 | — |
| Orkney | North West | 110,052 | — |
| Phalaborwa | Limpopo | 109,468 | — |
| Thohoyandou | Limpopo | 107,144 | — |
| Tokoza | Gauteng | 106,000 | — |
| Standerton | Mpumalanga | 101,101 | — |
| Mokopane | Limpopo | 101,090 | — |
| Ermelo | Mpumalanga | 100,324 | — |
Common questions
Which cities in South Africa have a trains page?
Johannesburg, Cape Town, Durban, Pretoria, Soweto, Gqeberha, Soshanguve, Pietermaritzburg, Evaton, Benoni and 60 more.
What currency is used in South Africa?
The Rand (ZAR).
Where these facts come from
- GeoNames (CC BY 4.0): population, elevation, time zone, postal codes
- Wikidata (CC0): area, sister cities, visitor numbers, heritage listings, stations and ports
- OurAirports (public domain): airports, runways
- Natural Earth (public domain): map outlines
Data compiled 13 September 2026. Hotel figures are from our booking partner’s catalogue on that date. Journey times on this page are estimates from distance, not timetables; check the operator before you rely on one.