I am starting to use Mercurialfor my personal projects. At the moment I use it only locally to be able to experience it but also to be able to try thing and revert easily to previous state.

To get started I downloaded

This let me work directly from a PowerShell window, Windows Explorer or Visual Studio.

To add a project to Mercurial from the PowerShell I used the following commands:

PS E:\Personal\Projects_Spikes\DynApplication> hg init

Then I created in the same folder a file named .hgignore, excluding file or folder which I don’t want to version in my C# project:

syntax: glob

*.csproj.user
obj/
bin/
*.ncb
.suo
_ReSharper.

*.ReSharper.user
*.TeamCity.user

You are ready then to add files of your project to Mercurial with

PS E:\Personal\Projects_Spikes\DynApplication> hg add

Then you need to commit the files

PS E:\Personal\Projects_Spikes\DynApplication> hg commit –m “Initital commit”

That’s it your files are under Mercurial source control.

To get started with Mercurial I recommend you to read Hg Init: a Mercurial tutorial!

If you need some hosting there is bitbucket, which has been bought by Atlassian recently. And it is free for 5 users. For more user you will have to pay, but it is a reasonable price.
You might also use Codeplex for your open source project which supports Mercurial !