The Microsoft Webmaster central blog shares some useful link building ideas that will help you gain inbound links without participating in link exchange and other black hat SEO practices. Excerpts:

1. Leverage Social Media (blogs, forums, video, twitter…)

By building a social network and sharing when you have something people might find valuable or interesting, it can drive traffic to your site as well as get people to link to your site.

2. Offer a free service

Whether it is a one-time or an on-going offer, providing a useful service through your website is a great way to capture your audience’s attention and drive traffic to your site. One site that I really like is Microformats.org. It offers an hCard and hCalendar creator. The site’s goal is the promotion of microformats but the free tools are reason enough to go to the site.

3. Work with industry or professional associations

If you are in an industry that has a successful professional association, working with that association is a fantastic way to get high-authority links.

Source: Getting the right kind of links