The Republican primary race has been astonishing from the word go — less the embarrassment of riches of the Dem side than just … embarrassment. It’s been a roller coaster. Nonetheless, I’m going to go on the record predicting that McCain will take it.

Here’s how I see it. Way back when, Santorum lost his Senate race and Bill Frist became a national joke and George Allen became a noncandidate thanks to macaca. At that point, everyone thought it was McCain’s to lose — the R’s tend to like the next establishment successor, and he was the only one standing.

Then the immigration debate (among other things) blew him out of the water. Suddenly Giuliani was the big thing, the Daddy Figure they’d all been waiting on. Then Fred Thompson was the big thing, the Real Conservative. Then (well, now) Huckabee’s the big thing, the Evangelical Insurgent. (Meanwhile, Romney’s plugged away, sinking vast sums of money into the race in order to maintain tepid support.)

But it turns out voters hate Giuliani the more they see him. He has completely cratered. Thompson was surprisingly strong tonight, but still, the conventional wisdom that he’s a stiff with no fire in his belly seems right to me. He’ll continue fading. Huckabee peaked tonight, in a heavily religious state with massive evangelical turnout. The Republican establishment will never, ever let him win. He’ll do worse in New Hampshire (less religious, more fiscally conservative) and then run into the right-wing buzzsaw of negative campaigning in SC (ironically, just what happened to McCain in 2000).

Romney got trounced tonight, in a state he’d spent millions of his own money on. It’s a humiliation, and if all his work hasn’t sparked any excitement yet, it probably won’t.

Who does that leave? McCain, waiting in the wings, campaigning hard in New Hampshire. The media loves the guy (they’re already calling his fourth place finish tonight a "win") and if he pulls a strong first place in NH, anxious R’s are likely to put aside their beefs with the guy and rally behind him.

So after all this: McCain.

PS: Yes, McCain’s good on warming, relative to the other R candidates. But there’s also this:

100 years.