Also, primaries are different in each state. Many require you to register with a party. Missouri however, does not. I can vote for anyone in the primaries from any party on any given election, but of course I only get one vote. You only have to tell the vote-booth person which party ticket you want. In 2000 I voted against George Bush twice. Once by voting for Gore in the main election, and before that by voting for McCain in the primaries.
I usually vote in the primaries but not always. I didn't last time because all of the Democrats were equally shitty and GW was already an incumbent. I likely will this time around though. I'm leaning toward Edwards but if I get the sense that Gulianni might get the Republican nod in Missouri, I'll vote against him on the Republican side....and all this while being a registered Libertarian. Personally, I like the way Missouri does it.