Git is probably the biggest open source rival to Subversion. It's designed for distributed development, an environment I'm not very familiar with. I've only got some experience with it, and only as a user, and even that is limited. I had some trouble wrapping my mind around the …
It's a relatively simple version control system so it works great for an individual or small team (less than 10 people). But if you have a medium to large team, especially one with members distributed over a large geographic area, or one where individuals need to be able to work "offline" without access to a central server, Apache Subversion will likely not be the best choice.
Also, if you're maintaining an open-source project where outside people will be interacting with your code repository, git is probably a better choice because it's becoming the de-facto standard these days and what most developers are familiar with.
IBM Rational ClearCase might be better suited for a smaller / simpler code base. Larger code bases really slow it down... but then again there are better alternatives out there for source control
Rational ClearCase is excellent for handling versioning and branching. No other tool I've used has the depth that ClearCase has when it comes to handling complex branching scenarios and identifying where certain versions of particular files are within a particular configuration.
Rational ClearCase handles parallel development of many dependent applications really well.
The use of ClearCase Views to switch between projects and configurations is extremely convenient as opposed to the local workstation model of the competitors.
Distributed development - I've never worked in an environment where distributed development (developers widely scattered geographically) was a factor, but that's why git exists.
Merging - Merging of code from one branch to another can be painful, especially if it's not done frequently. (On the other hand, doing merges is one of the reasons I get a nice salary, so I can't complain too much!)
Acceptance - Let's face it, git is what "all the cool kids are using." If you've got a bunch of developers fresh out of school, they'll probably know git and not Subversion.
While there are interesting alternatives, such a GIT, Subversion has been a breath of fresh air compared to its predecessors like CVS or Microsoft Source Safe (now called Team Foundation Server). Its ease of use and high adoption rate is going to keep me using this product for years to come.
Git has become the new standard of version control, with its support for distributed design. As a tool to manage and control versions, Subversion does it well, but Git is the future.
If development is centrallized to one location and your company releases hundreds of customized versions of your software per year, then ClearCase is the best tool for managing the complexity of multiple versions of customized software. If your company has globally distributed development, then I'd recommend Team Foundation Server over ClearCase. If your organization uses Agile Methodologies, then I'd recommend TFS with GIT.