It runs north from the southern suburb of Ridgeway through Mayfair a suburb just west of the Johannesburg Central Business District and ends in the north in Auckland Park.
[3]: 129 Passing the west end of the suburb of Robertsham, it crosses the old Kimberley Road and the on and off ramps of the north–south M1 freeway (De Villiers Graaff Motorway).
[3]: 129 After passing over the freeway, it becomes Crownwood Road through Evans Park, reaching a junction with the M34 Northern Parkway in Ormonde (just west of Gold Reef City) before continuing northwards through the old mining lands of Crown Mines and the suburb of Theta.
[3]: 106 Passing the old Langlaagte Deep Village, it intersects the east–west R41 Main Reef Road in the suburb of Crown and continues north as Church Street into Mayfair.
[3]: 81 Shortly thereafter it intersects the M18 Kingsway Avenue and becomes co-signed with the M18 eastwards up to the next junction, where the M18 becomes Annet Road south-eastwards and the M17 continues eastwards as Empire Road to reach its terminus at a junction with the M7 and M71 (Barry Hertzog Avenue).