Travelling in South East Asia can be a lot of fun. Typically, you can book on the spot and pay in the local currency. The only problem with this is that getting local currency can be a little costly as every time you withdraw from an ATM it will cost you a fixed fee from your bank AND the ATM. Here is a little tip. You can use the 12GO Asia website and book local trains, buses, flights and ferries and pay online using your credit card for more or less the same price as if you were to buy on the spot. That way, you can use your credit card and keep the local cash for other purposes. I personally use this website. They are a local agency and they will buy the tickets on your behalf and keep it at their office which is usually located near to the major train stations or airports. They charge a very small commission fee (like USD$1-$2) but this saves a lot of time and effort for a small fee. They can even mail you the ticket if you book far ahead in advance for an additional fee.
I frequently use this website especially around TET holiday or Songkran Festival as trains, buses and flights are usually sold out so book ahead!