A charter school is a school that is publicly funded but allowed to follow their own plan to educate their students. This plan does have to be approved through the school district that they receive their funding from but they are not required to follow that textbook adoptions that the district may make. Often they follow their own philosophy of teaching.
A public school is funding by our tax dollars. It is directly held accountable to state standards and country laws for improvement.
A private school is funded by the parents who have their children attend there and or by fundraising. These schools can be anything they want to be from religious to crazily expensive to helping specific children or training.
I don't think that you need to 'watch out' for charter schools in particular. But I think you do need to visit several different schools in your area to understand what is best for your child in your area. For instance, in my area the public schools are not great (I know that because I actually taught there; my opinion is not from some state rating) so my children attend private school. However, if we lived closer to where my parents live, I probably would not have a problem sending them to a public school because they are doing a better job then the ones near me.