primaries are run by the states caucuses are run by the parties the party decides which process to use but if it's a primary it's run by the state so the date of a primary is set by the state but the date of a caucus is set by the party and the rules of primaries are set by the state subject to federal law of course hence virginia's ballot access rule and the subsequent lawsuit now why states get to run primaries i don't know the history but the parties like having the state run the primary as then the party doesn't have to pay for it