Plone can do a lot of things and makes a lot of things easier. Plone 3 even adds versioning, staging and locking. PDF indexing. Smart folders. Open ID support. All out-of-the-box. For free.
But. Number of times you can grab the default homepage per second: plone 8, zope 227, apache 750, nginx 7462. So Plone is not the best delivery platform, even though it is an excellent content management system. There are some solutions. Cachefu, CMFDeployment (which exports it as static pages), entransit, deliverance, etc.
For some classes of problems, plone might not be the right tool. You don't want to track downloads with plone, for intance. Writing to the ZODB upon every read: that's not what the ZODB database is optimized for. Just as an example. And, according to Calvin, there are no nice Plone ecommerce packages. PHP has an excellent one and they used that for the ecommerce part of a site a few times.
Another thing: sending out mails to mailing lists from Plone. There are some solutions inside Plone, but they were not happy with it. Tying plone into some external mail sending app is often a better choice. Also look at salesforce for CRM integration for example. Those people have a lot of experience in their field and tying plone into their system might give your plone a nice edge.
Same with storage. Some data is better suited to a relational database. Large files can often better be handled outside the zodb (via tramline, for instance).
Our time is valuable. Why waste it by trying to hammer a square peg in a round hole? Pick the right tools for the right job and let Plone do the things it is good at.
My name is Reinout van Rees and I work a lot with Python (programming language) and Django (website framework). I live in The Netherlands and I'm happily married to Annie van Rees-Kooiman.
Most of my website content is in my weblog. You can keep up to date by subscribing to the automatic feeds (for instance with Google reader):