Some pros recommend to send email to sites you want to be linked with. But here is attention. Such letters are rarely read or even scanned. Maybe sending such emails with reciprocal links is merely a waste of time?
it's an interesting issue - I think the key is to really personalize the email contact - and if necessary even follow it up with a phone call
A site that does reciprocal links will probably have a method in place for automating much of the process (eg PHP Link Directory). On the other hand, there are a lot of small sites that are worth while to exchange links with. I like to use my wife's DJ site as an example. She mainly exchanges links with other DJs and wedding planning sites/directories. The big sites will have a link exchange script in place. Other DJs (not usually the most web saavy people) will exchange links, but since they have no link exchange script in place, she'll email them personally. If she really wants to exchange links with them, she'll call them and ask about a link exchange. This really serves two purposes. First, she gets a link exchange with a related site, and second, she gets to learn about another DJ and they way they operate. It really becomes a "networking" opportunity.