Agreed with CRX... I have applied for so many jobs that I am qualified for, it hurts. I have only gotten two interviews out of them and neither panned out. Shit is completely absurd, honestly. I want to meet who they're hiring.
It has to be your resume. At one time I had that problem, and then I sat down and completely reworked my resume so that it was simpler, easier to read, and my experience jumped right out. Since then, I have no problems getting interviews.
Another tip is to maintain different versions of resumes. If you're applying to be a programmer, for example, emphasize programming experience, projects, etc. If you're planning on applying for a management position, emphasize projects you've led and your experience.
I have had a few people tell me that I might be applying for jobs I'm over-qualified for...but then I check the jobs requiring experience and I don't meet that criteria either. One of the reasons I decided to go to grad school...probably not a good reason, but fuck, what else am I supposed to do? At least this way I snagged an internship working for a fortune 500 doing web dev and SQL Server.
Honestly, a lot of companies are trying to take advantage of this being a "buyer's market" for employees and many of those companies are being extremely foolish in the lengths they're going to nickel and dime people while posting ludicrous qualifications given the pay range. For example, I saw an MIS Manager posting the other day. The posting wanted a degree, 3-5 years experience in IT, and 3-4 years of management experience (IIRC). The salary range was $35K to $50K. Seriously, who is going to work that job at that piss-poor salary? The people who apply are going to be desperate, unemployed people and believe me, once something better comes along, they'll bolt immediately.