Both the primary process and the electoral college process are designed to produce consensus choices with the appearance of a majority, so that the winner has an aura of legitimacy. If everyone just voted for whoever they wanted, for better or worse, we'd have dozens of candidates, and the winner would end up with like 12% of the vote, and most people wouldn't feel that person is legitimate. By having the primary process, each person can have their vote for whoever they want, with two people being returned as the consensus choices. By giving people the opportunity to vote twice, they are more likely to be satisfied. For example, in my caucus I voted for Sanders. In the general election, I will vote against Trump or Cruz. I am satisfied that I got the opportunity to exercise my political power in a productive way.
I suggest you look at Israel as an example of a country that more or less votes for whomever they want. They have parties, but aside from a few, the parties are mostly all about their leader, each prominent party having one dominant figure, and public figures frequently forming new parties whenever they please. It can be quite chaotic, and Israeli papers constantly complain about the resulting corruption.