This has been a hot topic in my life of late. My girlfriend and I have discussed the options over countless nights and we've come to a solid conclusion...for us at least.
As we all know the biggest drawback to homeschooling as amberjones21 stated is the lack of social development the child will receive. School provides a place of social interaction for our children among their peers, so it is not right to take this from them. On the other hand, I know that the major reason for parents homeschooling their children in the first place is the fact that our school systems are terrible. Each and every year American schools fall in every category that they should rise in. So now people are taking action.
My solution is this. Up unto about sixth grade or so, our schools are OK. The teachers love what they do, and they love their students. But the biggest reason is the curriculum itself. Our children are only learning the basics in math, reading, writing, arts, cience and the like. The basics are good to know if you want to be able to function successfully in society.
Upon their entrance into junior high and high school the curriculum is shot to shit. They are no longer learning anything useful, and they begin to hate school. It is at this point that I would pull my child out of school and begin their homeschooling. They have had years of social development when it was most important for them to have it. Now they are ready to learn about life from their parents. They can understand many subjects and begin to discuss them intelligently. It is this time that parents are most needed in their child's development. That rebellious stage is when parents need to be closest to their children as much as possible and this solution allows that.
I hope some day we can fix our failing school system so that such matters may become moot. But until then I believe a combination of public school and home school is out best option.