смотри на
www.bahn.de это железная дорога Германии.
От региона к региона и от времени года и дня недели свои правила и порядки.
Основное правило- чем раньше покупаешь билет тем дешевле.
можно купить (в основной массе) билет у проводника уже сев в поезд.
Это в "междугородных" скоростных поездах, в региональных нет.
В Германии есть 2 Франкфурта- один на Майне (где аэропорт международный) и на Одере (на границе с Польшей).
Если из Франкфурта на Майне ехать собираешься то 95 евро на человека в одну сторону- я сейчас на
www.bahn.de посмотрел. Там понятно лишь скоросные поезда ходят- расстояние в сотни км. 4часа в пути.
Если из Франкфурта на Одере ехать в Берлин то на местном региональном поезде около 1 часа езды и о цене скромно молчат поскольку на региональые поезда цен в интернете не пишут
Ну и в обратную сторону точно так же (время и деньги)...