Best version control system: Git, Subversion, or other?

We're starting a new project. Until now we have been using VSS (Visual Source Safe).
VSS has worked well for us, but it is time to move on to a more 'fresh', or commonly used version control system.

After doing some research it seems that Git and Subversion are frequently used in the .NET world.

Two questions.
1) Are Git and Subversion the most commonly used or are there other popular version control systems out there?
2) Which one is the best in your experience: Git, Subversion, or any other system.

BTW: We have 2 important requirements.

1) Integrated with the Visual Studio 2010 IDE.
2) Needs to support remote access (we have some remote workers).

I have worked with both Svn and Git, and I would choose Git anytime. Git is easy to setup and get started. Also, Git is much faster to work with than Svn, and I have a lot less issues with Git than with Svn.

Git is a distributed VCS, meaning that each user has its own repo, and later on push their changes to a central repo. This has many advantages against Svn that only has a central repo.

However, if you choose to use Svn I'd recommend that you use VisualSVN addin to Visual Studio and the VisualSVN Server to manage your repository.

As a side note, when working with Git, I have found that I do not have a need for any Visual Studio integration that I always had with VisualSVN. Git just works from the command line.

The above article explains all the necessary command to work with GIT. The same can be achieved directly from inside the Visual Studio IDE as well. But knowing the basic commands comes in handy many times....

We use Subversion with VisualSVN Server and VisualSVN client plugin for Visual Studio. The server is really easy to setup and configure repositories and the plugin integrates very nicely with Visual Sudio (2005, 2008 and 2010 are supported).