There is nothing wrong with buying links to promote your website. Link buying has existed longer than link popularity search engine algorithms, it is a valid form of advertising. However like many other methods it can be used to spam.
There are many link brokerage services out there, none of which I use as either a buyer or a seller. Most of these sites do not appropriately value high quality links and instead deal more in bulk low quality links from crappy sites. When buying a link you do not want your site in the footer of some forum sandwiched between a link to a viagra site and a link to a car insurance site. What you want is a link on a site that closely mirrors your site in topic. You'll want your link to be one of a few links, ideally the only link, and you want the link presented in a way that makes it appear to be more of an endorsement than an advertisement.
There are different types of links you can buy, often you can buy a link on a single page, or you can buy a link on every page of the site, called a site-wide link. There has been speculation (and so far it is only speculation) that search engines may devalue site-wide links. So try to follow my rule for assessing link values.
Chris's Rule For Link Buying
1000 links (site wide) from 1 site is better than 1 link from 1 site. However 1000 links from 1000 different sites will be better than 1000 links from just 1 site.
Always strive for diversity in the sources of your incoming links, however that doesn't mean you should turn down a site wide link if it is an attractive offer and the site is closely related to your own. The site wide link may not help you as much as the same number of links from many different sites, but it certainly will not hurt you.
You'll not find a "Links" page on any of my sites. I do not do many link exchanges; at any given time among all my sites I could count the number of active exchanges on my fingers.
The reason is for the most part they are not useful, and the link exchange "industry" is rife with scammers and spammers.
For starters a link from an unrelated site, especially one you have to link back to in order to get, is going to be worthless. You'll get nothing context wise because the site in unrelated, and any weight you get will likely be sent back through your return link. Depending on the two sites in question, and link page setup, you may even end up losing more weight than you gain.
Links from on topic sites are better, but if it is just from a link directory or links page again you're dealing with a context issue.
The above types of link exchanges may be easy to get because there are a lot of people with links pages that they play fast and loose with, but they aren't worth your time.
Rather instead focus on in-content link exchanges. Such as one site will mention the other in an article, and the other site will recommend the first site as an additional resource to it's readers. Also consider deep link exchanges for specific pages of content. For instance if I ran a site on classic literature and had a page on Julius Caesar that listed the non-fiction works he authored. I might accept a link exchange with a site that focuses more on the rest of Caesar's life or the early Roman Empire. I would not seek for a link to my homepage, but rather I would want a link from their specific Caesar page to my specific Caesar page, and vice versa. The context of such a link will be stellar and should greatly help both pages rank well.
The other problem with link exchanges is that many people are dishonest and will take your link down without telling you, or hide or obfuscate it from search engines. So I prefer to only do link exchanges with reputable sites or with people I know or people I at least know of.