Though I'm newer on the forums, but I've been playing with RoundCube sine its first alpha, and I've set it up for all several different types of tasks.
A lot of what doni49 pointed out is very valid - especially in saying
You'll need to provide some way to create the accounts--RC won't create/delete accounts. It just allows users to log in to IMAP accounts that have been created. That is unless someone has developed a plug-in that I haven't come across yet.
However, you
can dynamically create acounts. See
http://www.php.net/manual/en/function.imap-createmailbox.php for info on the PHP function responsible, and
http://www.php.net/imap for the full set of IMAP functions.
It doesn't matter so much what OS your server's on, but whether you operate the IMAP server is critical. If you don't have full control, there's almost definitely a limit to the number of accounts, and it's almost guaranteed that you won't be able to create accounts dynamically yourself. It's not hard to set up your own IMAP server, but if you've already got your own running, it simplifies the process quite a bit, obviously.
I hope this will help get you started; feel free to shoot any more questions my way; I'll be watching the thread and my PM inbox.
--Jim