There's not likely to be much difference in price.
You can buy in advance and collect on the day from a machine or buy on the day at a machine/counter.
I go through once or twice a month for work and I just buy it on the day, mainly because I travel at peak times so the price is always the same (ridiculously high).