I've used basecamp in the past, and while it's not free, it has a nice GUI for the clients and it's pretty robust.
The only downfall to using it is if you need to fileshare large files (>10 Mb)... it can do it but you have to do a workaround using FTP and it's not very user friendly for non-FTP-savvy clients.
Otherwise you can do project collaboration, file sharing, version control, share calendars and notes and keep track of deadlines and who's supposed to be doing what. You can also set up different permissions for users so your client's clients will only see what pertains to them.