How long in advance should I purchase my night train tickets. We would like the privat sleeper cabin for 2, and our route is Prague-Krakow, and Krakow-Budapest. Also, what is the best/cheapest way to purchase in advance?
You could book these tickets at raileurope.com, but it probably would be cheaper to use the German Rail call centre. Dial 011 (US international access code) + 49 (country code for Germany) + 1805 996633.
You could also book the reservations through Euraide for a flat fee. If you have other reservations to make use Euraide, I think the flat fee is $50. Raileurope is too expensive.
I agree with the post about Euraide. We used them last year for travel between Italy and France and saved us a ton of money - even with their service fee. They are also very nice to deal with.
Regarding how far in advance to book, I would recommend you do it as soon as you have a firm idea of when you wish to travel. I just tried to get a private sleeper cabin on the night train from Paris to Venice with a travel date of May 23. Nothing available unless I wished to sleep in a 6-person couchette or take another train with a late-night transfer and an additional cost of 300 bucks!
(I used Rail Europe to try and book this.)
The German Rail call center is quite good. Have had nothing but friendly and helpful service from them. For the private sleeper, I think I would look to book as soon as you knew when I wanted to travel.