I'm not an expert on this and I might be wrong.
Some states offer a tax break if you invest in a 529. Mine (Hawaii) does not. You can invest in any state's 529, so we picked New York because they have Vanguard funds.
We put a chunk of money in a 529 when our first was born, and my mother puts some money in the account sometimes. But we have stopped putting any new money in the account because we realized a couple of things:
1. There's no immediate tax advantage to us putting money into the account, since our state doesn't offer this. The tax advantage comes at the end if we take the money out for our kids' educations.
2. You can use the money for any family member's education, not just the one you opened the account for, so we only have one account despite having two kids. We figure we'll split the money between them.
3. You do have to use the money for some kind of tuition, which is sort of annoying in my opinion. If our kids get scholarships, we're allowed to take the equivalent money out of the 529 tax-free, but what if my kids don't want to go to college? Or are unable to go for some reason? I just don't like the money being earmarked only for education. I mean, you can get to it for whatever you want, but there's a penalty (10%? Can't remember) for using it for something other than education.
4. Because of the limitations, we decided to max out two Roth IRAs instead of putting new money into the 529. You can use the principle of a Roth IRA for anything without penalty, because it's after-tax money. And I think the growth can be used for education penalty free. Therefore...I just haven't been able to figure out why someone would open a 529 instead of a Roth IRA IF they didn't have the money to do both (we don't) AND there is no tax benefit in their state (there's not for us). I figure we'll use the Roth IRA for the kids' college if necessary and if not, hey, cool, extra retirement $$.
BTW, if I'm missing anything here in my analysis, please feel free to correct me!!