Whether or not interrupts are faster than polling depends, of course, on how quickly you can poll. Usually, unless the application is extremely basic, its busy doing the stuff that it needs to do. The interrupt gives some measure of guarantee that whatever needs attention gets it within x time frame. Using an ISR to handle your time critical processing makes it easier to write the rest of your code, since you won't have to worry about making sure your polling loop completes within that same x time frame.
I am a big fan of using interrupts where they are the right tool. Some people go out of their way to avoid them, and each approach has its benefits. Personally, when there is data coming in that needs to be handled or sampled quickly, I think an ISR is almost always the way to go. A good example is serial data, which even at relatively low baud rate, and even with a hardware buffer, is difficult to deal with by polling.
Nick, I'm surprised to see there is so much overhead added by the Arduino library. I had read other comparisons between hardware interrupts and pin change interrupts, and usually the hardware win because there is overhead in checking to see which pin in the port triggered the interrupt.