We are currently creating a website for a printing company who needs an access-controlled area for clients to upload files. One of the best things about Wordpress is the nearly endless supply of plugins that add functionality. And one of the worst things about Wordpress is the nearly endless supply of plugins.
Many are out of date and do not work with the latest releases of Wordpress. Many don't work at all or are not ready for prime time. We expend considerable energy evaluating plugins and running them through our own internal certification process before foisting them on unsuspecting clients. After all, our clients trust us to deliver websites that work.
For providing client upload functionality, we like Smartypants Client Document Manager the best. It does require the use of an additional plugin, Theme My Login in order to make access control be seamless for the user, but the end result works very well and gets along nicely with the other plugins and themes we use.