I recommend Perforce. If your company is small (<= 20 users) you can use it for free. At least download it and try it out for yourself. It is light years ahead of TFS and it can integrate right into MSVS. I have used Tortoise SVN but it puts a lot of 'junk' on your drive in the repository and the icons it uses in the Windows Explorer need help. They are not as bad as TFS's but they are pretty awful. IMO Perforce has the best branching, merging and integration support out of the box. Perforce has two IDEs P4Win and P4V. Both are very good programs and simple to use. You can also integrate 3rd party tools into them with ease.
For a merge tool I recommend WinMerge but currently it cannot do 3-way merges. If you want to pay for a tool I recommend Araxis merge.