Travel by train is my favourite way of getting around Germany. The trains are clean, nearly always on time and the rail network goes practically everywhere. All that efficiency though doesn’t come cheap. Unless you have a Eurail Pass, just turning up to the train station and buying a ticket is expensive.
If you can plan in advance you can save plenty of Euros by booking online at bahn.com. This is the German Railways (DB) website in English, and it is easy to use.
I booked a ticket from Essen to Amsterdam for 29 Euro. The price at the station on the day of travel was 55 Euro. That ticket had to be booked in advance, so it was helpful that I knew my itinerary. Once you have made your booking, you will get a printable PDF file which is your ticket.
Booking online was a saving of nearly 50% compared to buying at the station on the day.