The distrust of recruiters is well placed. I don't know how many of them I've come across who say something like, "We need someone who knows SQL databases." I've gone so far as to ask them, "Which one? You realize that SQL is a language, not a database." I usually get blank stares as a result.
We recently went through some rounds of interviews. We usually bring the candidate into a conference room with the entire team and sit with him or her for a couple of hours and ask questions and just talk. One of the candidates we brought in had a resume that looked like the interview process should've been a matter of formality and only to determine if we liked the personality or not. Instead we found that the resume was like it was shot full of steroids. The candidate said he had extensive experience with several things we used, yet when asked questions he admitted that he had used the technology once a couple of years ago for a few minutes. He was looking for a senior level position, but we weren't willing to give him anything above a junior level. He took himself out of the process. What surprised me the most was the source of the resume... the contracting firm that presented him to us... because they usually do a reasonably good pre-screening with the candidates they want to forward on.
In our interviews, we ask questions that have "one right answer" and some that have "no one right answer." In some cases, we're looking to see if you really do have the basic knowledge you say you do and in others we're also trying to determine your methodologies... how you attack problems, etc. This way of doing things only failed us once, but we weren't exactly able to predict that the guy was going to step on toes the way he did.