These two points have been my experience as well. Only once has it taken longer than 2 days.
Though once a non-Prime shipment was supposed to be 5-9 day delivery (before I had Prime) and they didn't even send it out of their warehouse until Day 10. That was unnecessary, IMO.
Overall they're pretty good.
I had this happen once and called. The rep on the phone told me that I had selected "super saver" free shipping - which means it is not processed as fast as other orders. I expressed my frustration that I understood the shipping speed to be slower - but not product fulfillment. He told me otherwise - free shipping orders go to the back of the line. He upgraded my shipping to next day - which is when I got it.
So - you pay for "free shipping" through delays in order processing. At least I did.
I am now a Prime member.