You should buy in advance. They often put unsold tickets on discount sites and that makes them unavailable on game day at the box office. On any kind of bobblehead night the cheap seats sell out quick, although I don't think there are any of those left this season.