
North Rhine-Westphalia (NRW) has the highest population in Germany, with 17.5 million people. This is its public transport network of intercity, regional, and suburban trains and some bus lines, in a single map. It is astonishing.
Each city’s “stadtbahn” (tram lines built to rapid transit standards) and “strassenbahn” (tram lines) are excluded. There are probably a dozen independent tram networks — I should count them soon. You’ll find them in cities as small as 290,000 people.
This is also called the Rhine-Ruhr region, after the names of the two rivers, and the largest industrial area of the country. The map shows the NRW state in white; some train lines go to Arnhem in the Netherlands and Liege in Belgium, and at least two other states.
Notice how some of the cities in the center of the map are interconnected — connected to another city in more than one direction, in a kind of circular pattern.
It is incredible how many ways there are to get around.
This morning I traveled from Bonn to Dinslaken. It is 1h39m by RegioExpress (RE) train on a direct line. It has a fixed price of €27.50. I say fixed because the price is scheduled by the state and isn’t subject to market or demand-based changes like the InterCity (IC) and InterCity Express (ICE) have. There’s an RE train every hour but if you want, there’s another itinerary leaving every hour 22 minutes after the RE.

The alternative journey requires a transfer from an IC train (on which you can make a paid reservation to guarantee yourself a seat) to an ABR train. The journey time is the same as the direct trip but the price of portion on IC can change.
ABR is Abellio Rail NRW, a private train operator that has a tender to run certain routes. How they came to operate a line is really complicated compared to American methods of operating public transport systems and I’ve tried to describe it on the Transitland blog.
