This is a list of disused, abandoned, closed or dismantled railway lines in South Africa since 1910.
The list is primarily intended to document South African Railways (government) or private lines of historical significance (e.g. Okiep railway).
Closed lines Route (from/to) Closure date Notes Bridgend–Cape Collieries 1912 Bamboo Junction–Bridgend 1917 Lyttelton Junction–Roberts Heights 1913 Sheba Halt–Sheba Mine 1926 Valley Junction–Walmer 1928 Narrow gauge. Walmer town branch of the Avontuur line. Replaced by bus service. Monument–Sea Point 1929 This line ran from Cape Town City to Sea Point. Uplifted after closure. Colesberg Junction–Colesberg 1931Originally a terminus, this later became a spur off the Noupoort–Bloemfontein line. Elandshoek – Mount Carmel 1931Narrow gauge. Hamilton–Tempe 1932 Point–Durban 1936 original 1860 route (oldest line in South Africa) Stanger–Kearsney 1941 Narrow gauge. Kearsney–Stanger Light Railway Okiep–Port Nolloth 1944? Narrow gauge. Namaqualand Railway Knysna–Templeman 1949 Narrow gauge. South Western Railway Co. Ltd. Opwekker–Tygerberg 1956 Milnerton Railway, opened 1904, last race train 1954. Heatherton–Milnerton–Ascot–Tygerberg(terminus) section uplifted shortly after closure. Nancefield–Pimville 1974(railway lines have been uplifted) Wests–Cave Rock (whaling station) 197? Sarnia–New Germany 1994+- Line was uplifted in the early 1990s due to the closure of the Umgani power station in 1988 Delville Wood–Shongweni Dam ?Service line for construction of dam. Wartburg–Windy Hill ? Touws River–Ladismith 1981 Closed due to line washaway caused by the 1981 flash flood. Estcourt–Weenen 1983 Narrow gauge. Estcourt – Weenen Molteno–Jamestown 1984(railway lines have been uplifted) Fort Beaufort–Seymour 1984 Komatipoort–Reserve ?Part of the Selati line through the Kruger National Park Umlaas Road–Mid Illovo 1985Narrow gauge. Umzinto–Highflats 1985 Narrow gauge. Part of the Umzinto–Donnybrook narrow-gauge railway Ixopo–Highflats 1985 Narrow gauge. Part of the Umzinto–Donnybrook narrow-gauge railway Union Bridge–Madonela 1985 Narrow gauge. Part of the Umzinto–Donnybrook narrow-gauge railway Ixopo–Donnybrook 1986 Narrow gauge. Part of the Umzinto–Donnybrook narrow-gauge railway Port Shepstone–Harding 1986 Narrow gauge. Re-opened in 1988, see Alfred County Railway Kelso–Umzinto 1987 Cape Gauge, closure after abandonment of the Umzinto–Donnybrook narrow-gauge railway Gingindlovu–Eshowe North 1987Closed after line washaway Boughton–Hilton 1987Part of old alignment of the Natal main line Umlaas Road–Thornville 1988Part of old alignment of the Natal main lineBowkers Park–Tarkastad1988(railway lines have been uplifted) Imvani–Qamata 1988(railway lines have been uplifted) De Doorns–Kleinstraat 1989 old Hex River Pass line. Replaced by Hex River Tunnel Matroosberg–Kleinstraat 1989 Loop line for the old Hex River Pass. Replaced by Hex River Tunnel. (railway lines have been uplifted) Groveput–Copperton 1991 Closure of mine. Schoombee–Hofmeyr 1992 Grahamstown–Port Alfred 1993 Port Alfred Railway Line Armoed–Calitzdorp 1993 Cookhouse–Somerset East 1993 Barkly Bridge–Alexandria 1993 Louterwater–Avontuur 1993 Narrow gauge. Section of the Avontuur line Hercules–Magaliesburg 1996Passed through Hartbeespoort Pinetown–Cato Ridge 1997 partly still open there is a weekend steam train run by umgeni steam railway between Inchanga and kloof currently only to bothas hill due to line damage Modderpoort–Ladybrand 199? Marseilles–Ficksburg Open Volksrust–Bethal ? Witpilaar–Vredenburg ?A spur off the Hopefield–Saldanha line. (railway lines have been uplifted) Pieters–Harts Hill ? service line to quarry Estantia–Klipstapel ? Paarl–Franschhoek Closed early 2000's (partly still open)Small sections privately operated by Franschhoek Wine Tram, rest of line still intact but abandoned. Merrivale–Howick ? Hilton–Cedara ?Part of old alignment of the Natal main line Theunissen–Winburg 199? Branch opened 1898. Branch was originally planned to be extended to Senekal Orkney–Vierfontein ? Uplifted after washaway. Re-laid, open December 2012Springfontein–Koffiefontein2001Dover–Vredefort2001Wolvehoek–Heilbron2001 Uplifted / stolenArlington–Heilbron200?Chelsea–New Brighton2001Narrow gauge. Private branch of the Avontuur line, to PPC cement factory. Caused by closure of all limestone mines along Avontuur line. Aliwal North–Barkly East 2001 Sterkstroom–Maclear 2001Rosmead–Stormberg2001 Hutchinson–Calvinia 2001 Kootjieskolk–Sakrivier 2001Branch line off the Hutchinson–Calvinia line.Cor Delfos–Voortrekkerhoogte2001 Nylstroom–Vaalwater 2002 Naboomspruit–Zebediela 2003 Pienaars River–Marble Hall 2003 Pentrich–Mkondeni 2004 Service line. Part of old alignment of the Natal main line. Alfred County Railway 2004 Narrow gauge. Started 1988, Port Shepstone–Harding Cor Delfos–Mooiplaas 2004? Service line to PPC Dolomite quarry at Erasmia near Pretoria, passed through Laudium Sannaspos–Zastron 2006 George–Knysna 2006 Original Outeniqua Choo Tjoe route. Closed due to line washaway. India Junction–Alberton 2007 Grootvlei–Redan ? Alicedale–Grahamstown 2008 Port Alfred Railway Line Thornville–Richmond 2008? Assegaaibos–Louterwater 2009 Narrow gauge. Section of the Avontuur line Gamtoos–Patensie 2009 Narrow gauge. Branch of the Avontuur line Kaydale–Nigel 2010
Re-opened Klipplaat–Graaff-Reinet closed in 2001, re-opened in 2015/2016. Unused since. Graaff-Reinet–Rosmead, closed in 1993, re-opened in 2015/2016. Unused since. Wolseley–Prince Alfred Hamlet (branch line), closed c.2002, re-opened in 2015. Belmont–Douglas, Upgraded 2013/2014.
Unsure status Firham–Vrede Kaapmuiden–Barberton Nelspruit–Plaston Buhrmannskop–Lothair Makwassie–Vermaas Vermaas–Pudimoe Klerksdorp–Ottosdal Franklin–Matatiele Franklin–Kokstad Ennersdale–Bergville Schroeders–Bruyns Hill Dalton–Glenside Chailley–Mount Alida Greytown–Kranskop Dreunberg–Zastron Addo–Kirkwood
Chaldon