One thing to add:
The 529 plans vary by state. Be careful. There are age limits on 529's imposed differently on a state by state basis. For example, I had narrowed the choices for the plans I will recommend for my clients down to three, thanks in part to much of what I read on here!, Utah, Iowa and New York. Re: ages there are big differences:
Utah - benefits must start to be paid out to benef. by age 22 & 4 mos., with special permission needed to extend to 27 or so.
Iowa - Account closes when beneficiary turns 30.
New York - No age restrictions.
Also, each state's definition of "family memeber" who can get a non penalized transfer varies greatly. Utah's is very limited where NY's is very liberal with Iowa in between. B/C of these factors, I will be recommending NY for some and Iowa or Utah for others. Read the fine print!!