Me and my co-founder flew out last summer for YC interviews and weren't accepted. This is my advice.

We had been accepted for the interview and for a good two or three weeks we dropped just about everything. Stopped going to class, stopped going to work, and more or less just hacked on the demo. Even in the airport, on the plane and in the hotel we kept hacking. This demo was kicking ass. We also talked a bit about our talking points and plan for the interview.

On the day of, we walked into Y-Combinator, chatted with some of the other applicants about what we all were working on, played with a robot from Anybots that was wandering around, ate some snacks and then went into the interview room. As soon as we entered the room, we greeted everyone , and went to sit down. The plan was to have my co-founder start talking and I'd plug in the laptop and bring up the demo. Before either of us could do anything (literally as soon as the last hand shake was over) we started getting questions thrown at us. I mean thrown. This was kind of unexpected, as we thought it'd be more of us talking, presenting, and answering... but for a good solid 10 minutes we were sitting across from 3 people who never let up. As soon as we'd start answering 1 question, we'd get 2 others thrown at us when we were 3 words into our answer. This was at first misleading to me (as it seemed they didn't have time to listen to our answer)... but you quickly realize what questions are being asked and why and how satisfied they were with the previous answers. Generally the sooner they cut you off, the more pleased they seemed with what you said. You only have 10 minutes, so as soon as they hear what they want to, they tended to move along.

We did a quick demo, really quick... measured in seconds but closer to 60 than to 3. We spent weeks working on the demo, and it turned out to potentially be the least significant part of the whole interview. They liked knowing there was a demo, they like seeing it and getting a quick feel for our capabilities and general direction... but that took about 15 seconds for them to get a grasp on, not a 2 minute demo.

We left uncertain of the outcome, but glad we'd just gone through the intense session. We'd never pitched before, and it was good to know that we just walked out of the door having gotten some great experience pitching to the best.

Later that night we got an email from Paul that was really well written and insightful. The gist of the email was that they loved the team, the demo, and the idea but not how we intended to monetize it. We've since refocused on a more specific problem (in the same domain) that we feel we've solved more adequately than anyone in the field. We've also decided to continue bootstrapping for now.
The lessons learned are:

1. You can have the greatest product in the world, but no one will care if you can't talk about it. We should have spent more time preparing for questions than hacking. We aced all of the phone screens, and we wrote everything from scratch so we felt we could easily answer any questions tossed at us. We should have spent more time fielding practice questions.

2. We should have discussed monetization more. We had a plan, but perhaps it was a little too optimistic. We refused to just say "ads", we wanted real users paying for this and our approach at the time could have used some refinement.

3. Enjoy the experience. We didn't get accepted, but still learned a great deal. Paul's email is still referenced to this day. The interview inspired us to revisit what we were doing. Looking back a year, I'm much happier with the product we have now. We went back to the drawing board and came out with a much stronger approach and idea.

4. Apply. Just filling out the application will make you more aware of your startup than you are right now. I guarantee it.

5. Don't give up just because you weren't accepted. If your idea is any good, you'll have to "ram it down their throats" anyway.

The only major downside is that we currently both have 9-to-5's and it really cuts into productivity. Bootstrapping is hard.

We came out of the process better than we were going into it. We probably won't be applying again this cycle because we're hoping to finally push live what we've been working on. We'll almost definitely pursue investors after the push though, we just don't need the distraction right now.