I'm going to assume this is largely for offline backup type storage: easily created and restored, but not heavily used in day-to-day operations.
2TB drives can be had for about $140 these days. So, for 10TB, 5 drives, $700. Figure about $400 to build a semi-low-powered server around that running Debian or Ubuntu or some other Linux flavour. If you get a system with multiple NICs you can bond the network interfaces together to (potentially, I believe you need a managed switch that supports trunking) increase the available bandwidth the server has, and protect against NIC failures. You can then expose the storage via samba, NFS, or some other method to the workstations that need to be using it. For this large a data volume, you'll probably want some sort of redundancy so that when (not if) one of these drives bites it, you wont be without your data. RAID5 is not a good idea here, for several reasons, but RAID10 fits the bill. Since the server is running Linux, you can use mdadm to manage the RAID array. You'll need to double the number of physical devices to do this, so you're up to 10 drives. Total cost of this storage server: ~$1800 plus the sweat equity in building it and administering it.
If you really love your data, (if this is truly important production data, you should!), you could build a duplicate server, and backup the backup. You can do this with an rsync crontab, which might be horribly slow, a netcat/tar pipe solution, which would be faster to be sure, or set up the raid devices as the base of a drbd device. With the storage duplicated across both machines automatically, you've (essentially) guaranteed to have redundant backups of the data. You can get even fancier and set up a heartbeat failover system to guarantee availability of your data volume.