Battambang is Cambodia’s second largest city and is not frequented by many tourists, however if you find yourself here and manage to leave (it is known as a city that sucks people in when they arrive) then here is a guide on the bus journey to Bangkok, which can be a little confusing.
Busses leave Battambang a few times a day. After scouting around many agencies I found busses at 4:30am, 7am, 7:30am, 8.30am, 1pm. Unfortunately there is currently no night bus service to Bangkok unlike from Siem Reap. Tickets cost between $15-21 depending on the comfort and time of the bus. I took the $15 bus by Virak-Buntham Express Travel, you can find them on Google Maps here.
The cheaper services are not direct and require a change of bus at Poi Pet (the Thai border) after about 2 and a half hours. If this is the case for your bus, it will stop just prior to Cambodian immigration. Here you will be required to exit the country, which you can do at the right just past the roundabout. From there walk on the left side of the road down to Thai immigration where you will likely be met with very large queues. Immigration at Poi Pet is notoriously slow and you can expect to spend up to 2 hours queuing. Once through you can get a bus by going to the left, just show the ticket given to you in Battambang. If your bus is direct, your guide will tell you where the bus will depart from after Thai immigration.
Warning: Poi Pet is full of touts, scams and thieves. Watch your valuables!
After clearing immigration to the left there is a car park where you can get an onward bus to Bangkok (if you require a change), the remaining journey will be around 4 hours and most busses will stop at Bangkok railway station as well as Khao San Road. Alternatively if you are feeling hungry after what feels like an eternity at the border, there is a nice place to relax selling noodle soup at the end of the first road on the right.