Looking at block chain.info, it appears that sometimes there is a gap of an hour or more between blocks being generated. I don't understand why this happens, but I think that would delay all transactions and create a big backlog, because the blocks are what confirm the transactions. Paying a bigger fee might get you to the head of the line, but it looks like a flaw in the system.
On 1/24, I had a transfer between codebase and Mt. Gox that took over 6 hours! This does not build trust in bitcoin as a currency. Will this get worse as transaction volume grows?
The time between generated blocks is completely random. It is designed to be approximately 10 minutes, but it is frequently more or less than that. The transaction volume doesn't have much effect on time between blocks.