Well lets firstly talk about what makes the greatest links:
- Relevance
- Pagerank
- Authority
- Anchor text
There are many ways to build links the first is to write content, having something which is useful, interesting or controversial can help people to link to your website. Tool are also good, they can create a form of link bait and will increase the stickiness of your website.
Partnerships and Sponsorships can create links also actually linking to other can often give praise and so that praise can be given back. Creating comments and actually networking with other can help build your profile and gain links.
There are many different types of links whether it be a reciprocal, three way, one way link or how the link is positioned on a page. Contextual links with a page normally point out a more natural link and can be more relevant (dependent on the text which surrounds the link.) You can have links in the footer of site i.e. a wordpress theme or in the blogroll of a site.
You can get directory links or article links, links within RSS feeds. If you write a blog and link to your site make sure it’s an absolute link as site will grab your content and so you can gain links that way.
Creating your online profile will help, social network profiles can help with further links use Dmoz and Yahoo Directory but also vary your anchor text on site this will giev a more natural approach.
Dave Naylor recently talked about if you gain a top 3 rank in Bing, then you can gain a link from http://encarta.msn.com/.
So there are many way to gain links, unfortunately there is no real quick win.