We should number every public transport service, including all train services. The only exception should be the London Underground, where the line names are so well-known that it would be needlessly disruptive (and it is undoubtedly true that named services are more “charming”).
Unless you have a tram
network then there's no need to number them.
The main reason for numbering bus routes is to easily distinguish one from another, especially when buses can take a variety of different routes.
If you're getting a bus from Croydon to Addington, there are 3 different services – 64, 433 and 466 – which all run different routes to get there. So if you're going to Addington, you
probably want to know which one you're getting on so you don't get on the round-the-houses bus, but more importantly if you're going to Selsdon or Shirley then you
really need to know which one you're getting on because some of the buses to the same endpoint won't be going your way. A bus that was just described as "Addington" wouldn't be sufficient information (especially now that TfL have removed intermediate points from the destination boards), and so numbers are needed.
But for the trams, the lines are fixed and there are only four of them. A tram that says "New Addington" on the front is unambiguously going on a set route. Even for passengers who aren't familiar with the transport network and so might not know that a bus to X is the
only bus to X, it's pretty easy to find out that there's only one tram line to New Addington. Apart from Manchester, none of our tram networks are big enough to warrant line numbers.
With trains, it kind of goes the other way. In too many cases there
aren't set routes that have a consistent calling pattern, and so adding numbers would in many cases make it more complicated than it is now. How many different service numbers would you need for LNER trains? I can see at least 9 service patterns that repeat regularly through the day, not to mention the odds and sods like Hull and Skipton and Aberdeen, but then even among those there are some peak-time variations. But unlike a bus network, trains don't call at all stops along the route. It's very easy to draw a map showing the three different bus routes between Croydon and Addington with each route being numbered, but how do you do that clearly on railway when different trains between London and Newcastle
running on the same route have different calling patterns? Does EC01 cover
all trains between Kings Cross and Edinburgh including those terminating at York and Newcastle? If so, that's no better than the current system for anyone going to Darlington, if anything it's probably worse. Or do you have different route numbers for EDB fast, EDB slow, NCL and YRK (plus all the other branches and offshoots)? Because now you've got a confusing and unholy mess. If the rail network had neat, consistent service patterns then route numbers might work, but not with what we've got now!