I went to public school half my life, and homeschooled the rest of it.
I personally think homeschooling is a GREAT option. In the US they have the "No Child Left Behind" initiative and instead of TEACHING the kids things, all they do is focus on passing a standardized test each day or whatever... so basically no kid gets left behind because they stunt the intellectual growth of all the other kids LOL. Dunno where you live, but school seems to have become more and more like that in most areas, Canada included.
With homeschooling you can actually adjust the pace for your child and teach him in a way that's entirely customized for HIM. You can also add so much more to the curriculum that they just don't have time to teach in regular schools.
The most important thing, though, is that when doing homeschooling, to make sure you find other ways for your child to socialize. Clubs, sports, playdates, etc. are extremely important.