It depends what you consider 'long'. The 246 to Westerham is 16 miles, the 314, less far out (Eltham-New Addington), is 14 miles . Time-length is a different matter: the 25 can easily take well over 2 hours to cover Oxford Circus-Ilford - really punishing for the driver!
I've been on a 2B North Finchley to Crystal Palace and a 133 from South Croydon to Hendon Central (via East Finchley) and those were long journeys, by London standards. I also went on the 410 from Bromley North to Reigate, and by the time we reached Westerham we were barely halfway through the journey.
There was also a morning rush hour journey on the 21 from Farningham, Bull to Moorgate, Finsbury Square that existed long after the Swanley/Farningham section had its 'normal' service converted to opo. Unfortunately, traffic conditions now preclude such journeys being scheduled even on a Sunday.
Near to the Addington area, the 54 used to run from Selsdon,Farley Road to Woolwich, General Gordon Square, with a 'schools' extension from Selsdon to Riddlesdown, though I never personally made the full journey.
--- old post above --- --- new post below ---
There is also the 83 Ealing Hospital-Golders Green which can take 100 minutes plus at times although the PVR is 28, PVR for the 25 is 60.
On renewal of contract next year, the 25 will have 64 buses allocated, without any change in frequencies that I'm aware of. though possibly more buses will work through to Oxford Circus post-Crossrail works.