Once there was a variety of routes used by through trains from Sheffield to London. The Great Central ran trains via Nottingham Victoria and Leicester Central to Marylebone. The Great Northern ran services via Retford to Kings Cross and also via Nottingham Victoria and Grantham.
The Midland ran trains via Derby and Leicester, via the Erewash Valley line to Trent and thence to Leicester and via Nottingham and Melton Mowbray to St Pancras.
Now the only though trains run via Derby and Leicester to St. Pancras. The Great Central route closed in the 1960s and whilst there was a service via Retford to Kings Cross for a short time it too was withdrawn. British Rail ran a Sheffield-Nottingham-Leicester - St Pancras service for a number of years but now all London-Nottingham trains terminate at Nottingham. Most of the current London-Sheffield services terminate at Sheffield: at one time most were extended to Leeds, some continuing to Bradford or to Carlisle and thence to Glasgow (Thames Clyde Express) or Edinburgh (The Waverley).
Under privatisation there is now no competition for London traffic to Nottingham, Sheffield and Leeds.