It all depends on what do you want.
If your site is small with a small number of visitors and you want a pretty basic forum and you don´t need all the fancy features that come with the big forums like invision, phpbb or yabb and you have the knowledge, you can built your own using php + mysql or even php + text files (it´s safer if you use mysql though). The advantages would be that you wouldn´t have to constantly look for updates and security patches for you forum and there are less chances to see "OMFG 0wn3d LOLOLOL !!!1!1one" on your forum.
If your site is bigger and you actually need a lot of features for your forum, you might want to take a look at some of the free, big forums that are out there, since building a secure and robust forum with lots of features takes a long time and a lot of knowledge.
For a list of free forums you can take a look here
. If you´re lucky it won´t get edited out