Bill O’Reilly pummeled President Obama last night in the ratings. The Fox News Channel star clocked 705,000 news demo viewers last night on The O’Reilly Factor – his biggest haul in that 25-54 age bracket this calendar year to date.

Obama, meanwhile, appeared in O’Reilly’s timeslot on MSNBC; he was interviewed by Jose Diaz-Balart about immigration policy, at a town hall meeting held at Florida International University campus. He logged 129,000 news-demo viewers CNN’s AC 360 averaged 162,000 in the age bracket in the same time period. (Obama’s town hall also ran on Telemundo, but one hour earlier).  O’Reilly’s news demo crowd was up 24% compared to same night last week. Obama’s was nearly 29% better for MSNBC than same slot last week.

Overall, more than 3.1 million viewers watched O’Reilly, who took a break last night from defending his reporting while at CBS News – work that has been called into question by various media outlets, but defended by pal Jon Stewart, though he did so by arguing nobody watches O’Reilly for the truth anyway. O’Reilly kicked off his program last night talking about Obama — and George W. Bush — having “absorbed tremendous punishment in order to serve their country.”

At the same time, an average of 907,000 viewers — laps behind O’Reilly, but 49% better than MSNBC averaged in the time slot last week — watched Obama reject suggestions he failed to act to get immigration done early in his administration while Democrats controlled Congress, tell attendees that if they failed to vote, they shoulder some of the blame for lack of immigration policy reform (two-thirds of eligible voters stayed home in the last election) and explain he’d expanded his executive authority as much as he legally could, in order to deal with the issue, and that pushing further would be to ignore law.