It's very easy. The GOP votes were split and fragmented throughout. Romney and Huckabee effectively split the conservative vote. Which allowed McCain to win a number of major primaries by considerably less than a majority.
Consider the results from Florida, for instance:
McCain 36%
Romney 31%
Guiliani 15%
Huckabee 13%
If you recall, Guiliani had placed all his marbles on FL and dropped out soon after. But the conservative vote continued to be split. In the Super Tuesday GOP primaries just after Florida:
Romney won Maine soundly. McCain only pulled 21%.
Romney won Utah. McCain only pulled 5%.
Huckabee won Tennessee. McCain pulled 32%.
McCain pulled out a victory in Oklahoma with 37%. Together, Romney and Huckabee garnered 58% of the vote.
McCain won
You can follow this trend state after state after state. McCain picking up enough delegates to become unbeatable as the conservative votes were split among Huckabee and Romney.
Once Romney pulled out of the race, Huckabee was the only conservative remaining to challenge McCain. He was a virtual unknown. Not much respected in the MSM. And yet he pulled 41% to McCain's 50% in VA. By that time, it was over.
So that's the answer to your question. McCain won by default. He was never the overwhelming choice among GOP voters. In fact he won less than half of all GOP primary votes. Hardly overwhelming. The facts and the numbers speak for themselves.