I tend to put SEO companies into one of three categories:
1.       The pretenders
2.       The black hats
3.       The white hats
The Pretenders: Some companies don’t really do SEO work or very little; they rely on a clever sales pitch and essentially sell you something using smoke and mirrors. Their pitch is usually a guarantee of rankings. The catch is that they choose keyword phrases that have no competition (and no search volume). They will send you a report showing you that you rank on those keywords, but they don’t show you how much traffic you got or how frequently the term is searched for. If you tracked your traffic via Google analytics, you would soon find out the true value of ranking on these keywords – zero.   After a while when you don’t seem to be getting any business, you may shut them off. I have seen a number of variations in these “pitches” but the one thing they have in common is that they drive very little relevant traffic to your site. They primarily rely on the fact that most customers have very little understanding on search engine optimization.
The Black Hats:   These companies rely on link building schemes that are considered gross cheating by Google. Buying links, creating text links from low quality websites or blogs, automated directory submissions, automated forum postings, spinning articles and distributing to 1000s of article sites, are a few of the techniques that are used to artificially create many links to your site.   Many of these techniques have worked in the past and have moved their client’s website to the top of rankings on some fairly competitive search terms. The client is generally happy because they are getting good traffic and leads.   The catch is that Google is continually updating its algorithm to sift out these types of links. In fact the latest update known as Penguin is supposed to actually punish websites that are using these techniques as opposed to just discounting the value of the links.    Many companies who rely primarily on cheating to get their clients good ranking are either going to have to change or go out of business.  
The White Hats: These SEO companies tend to look at the bigger picture when trying to get their clients search traffic.   Link building is usually part of their work, but they are looking at a variety of ways to help your site.   Generating unique and valuable content, engaging in social media, video marketing and blogging are some of the techniques that they may directly use, or work with you to get them accomplished. They will work on your site structure to make sure search engines are indexing your site fully; they will examine ways to improve the flow of your site. They are looking at issues such as slow downloading or high bounce rate to help improve your site. They may work on improving calls to action and work with you in a number of areas to improve your web presence. The byproduct of their work is a more user friendly, informative, engaging and dynamic site.  
I believe the white hat companies are the only ones that are going to get you relevant traffic today and far into the future.