

(Andi Meier for The Washington Post)

‘Our main story tonight, and I cannot believe I’m saying this, is Donald Trump,” John Oliver said to boos and knowing laughter in his studio on Feb. 28.

Until then, not even comedians had considered Trump seriously. Sure he had lasted longer and polled better in the preliminary stages of the presidential race than conventional political wisdom expected. But it had often seemed that his fade was imminent — that we had seen peak Trump. His defeat by Ted Cruz in the Iowa caucuses strengthened that sentiment.

Then he won the New Hampshire primary, and state after state after that. Although the Republican primary fight lasted until May 3, it was clear much sooner that Trump was going to be the nominee. For all of the #NeverTrump movement’s best efforts, the real estate billionaire secured the nomination more easily and more convincingly than Mitt Romney had four years earlier.

But the primary race and the general election are two different animals, right? Trump’s appeal could never find purchase in a broad enough swath of the country for him to possibly win, everyone thought. His endless stream of controversial remarks — about women, about Hispanics, about, well, everyone — would doom him. It had to.

It didn’t. Trump was right all along, and we, the political class, were flat-out wrong. Trump effectively channeled anger and anxiety into a movement. It didn’t matter that most people didn’t like him, didn’t think he had the temperament for the job, didn’t believe he was qualified to do it. People hated politics, hated Washington, hated where the country was headed and desperately wanted change — even a radical one. Four in 10 people in the exit poll said a candidate’s ability to “bring needed change” was the most important quality in deciding their votes; Trump won that group 83 percent to 14 percent over Hillary Clinton.

Trump pulled off the largest upset in the history of modern presidential politics. (Sorry, Harry Truman!) He began 2016 as a punch line. He ends it as the president-elect. Not bad.