For a server, the most common platform should be Linux. It is stable, fast, easy, secured, does not require expensive machines and the free options are valid choices for all kinds of businesses. I see no single benefit for installing Windows for a server.
Most of the time, after the initial set-up of the source control server, you will never touch the server again. (*)
When selecting an install of Subversion over WebDav/Apache, the only port that needs to be open to the server is port 80 or port 443. No risk of intrusion, no need to do regular software updates. One of my servers is being used by 5+ people for more than 4 years and never went down except when there was a power-cut. (No UPS, sorry)
Subversion also allows for the svn: and svn+ssh: protocol.
When selecting CVS, a pserver comes into the picture. I noticed that this is available as a standard plug-in on e.g. QNAP, as a module in webmin. So please check your devices or servers, you might already have it. Because it requires a non-standard port, it is less straightforward to have it available across networks. It is more or less comparable to the svn: protocols with their advantages/disadvantages. You can have a webview and download service installed on you server so you can read the source as well via a web-browser.
GIT uses per default a non-standard port as well. It might be difficult to publish a GIT server to the outside world. (e.g. Try accessing a GIT server from a roaming mobile phone.) If you control your network environment, this should not be a problem. A number of projects exist to expose GIT over a web-interface. GitHub is a example.
Following tools require a server:
*: if not linking to an LDAP, you will need SSH access to add users. Please have a look at subversion edge for alternatives.