I have taken this from a similar question I answered not long ago...
"I will try and keep this as basic as possible so if you need me to elaborate, please ask.
The best way to start (and often a step that people forget completely) is to approach company's who you already have had dealings with. Try some of the following:
Accountants, Solicitors, Suppliers, Friends, Local Newspapers, Customers, Marketing Company's, Software Company's... Any business that you have dealt with. It could be a plumber who fitted the kitchen, the builder who built the building, a welder who made your gate... Anything!
Chances are, these websites wont be that relevant to your market (and maybe not even very good) but they are always an important place to start.
Be creativewhen approaching them though - chances are they won't just want to link to you for no reason. Maybe write them an article for their blog or news section on their website. Maybe write a testimonial saying how pleased you are with them or their service and link back to your site within the testimonial.
Next on the list is to ask your website designer for a link (if you have one). If he/she is proud of the work they carried out, they would happily add your website to their portfolio on their own website and link to your site.
If you had a logo designed and think it looks pretty sexy, show it off! There are lots of logo directories that will have your logo on their site with a link back to your site.
I would also try a couple of good quality directories (ensure they are manually edited directories and don't look like link farms). Remember though, don't do too many directories - especially not to start with!
From here I would recommend writing a press release and getting it published around the web. Obviously the first press release should be titled something along the lines of "New Website Open For Business".
After the press release, ask a couple of friends (or even better - customers) to write a review of your website on a review site. Once you get a couple they start looking legit but don't go over the top!
This should get you hopefully a few links. From here-on you should start picking up skills and learning more about how to get better links and optimise more efficiently.
I would recommend that throughout this whole stage; every single one of your links uses branded anchor text (or naked anchor text). What I mean by this is use yourdomain.com or click here etc).
Hopefully this helps?"