It does essentially the same thing as SVN does, but in another way. You’ll have to learn all of its flow and specifics. You can’t say everything in one question, but specific questions are welcome.
It is a more complete product, SVN takes care only of version control, TFS is a Life-Cycle Management Application, so it takes care of the entire development flow. SVN needs auxiliary tools like control tickets of bug to do other tasks. It can for example force certain policies on how to proceed with the code being changed. It may have more control (audit) of everything that has been done, probably what makes people choose it, but you have less control than you can do.
Many of the advantages are based on opinions, saying which is best is even more. This we do not do here.
Some say it’s easier to do merge in TFSVC (one of the TFS version control options). I’ve seen reports of nightmares and that SVN is simpler. In compensation TFS allows you to use Git that does the merge simply.
I won’t compare Git to SVN because this has already been made.
The terminology of SVN and TFVC changes a little and the flow may be a little different (check in/check out against commit/update), but essentially version control can be done in the same way.
TFS expected the developer to always be connected to the server, but newer versions improved this. Make sure you’re using a more modern version.
Other differences are irrelevant to the question as the decision is already made. I’m not even going to talk about cost, better integration with VS, deployment differences.
Generally speaking people consider it a more solution Nterprise and the SVN is more community. There’s nothing wrong with using one or the other, it’s a matter of culture where you work. Both are centralized. unlike Git which is decentralized.
It may be that some specific feature of one can be critical to a team. It may be that the choice is made for "policy" issues, as always prefer Microsoft products. Some use more for project management resources, others for the more centralized form of TFSVC control. Those who like ALM in general but prefer a "more flexible" version control opt for Git within TFS.
SVN is a lighter solution. But today many people prefer to use isolated Git without TFS as a lighter version control.
Some myths in his answer: TFS doesn’t have to be connected all the time with the developer, both in Git, which is already a DVCS, so I don’t have to; and in TFVC, which works also disconnected, although it doesn’t allow local check-in. TFS also works with other Ide’s or languages other than VS, both Git and TFVC.
– egomesbrandao
Do you have any reference to this? All I have say this.
– Maniero
You can find information about local Workspance, which allows you to use the TFVC without being logged in, but it is important to note that it is not possible to check in locally, remember it is a CVCS; here https://msdn.microsoft.com/en-us/library/bb892960.aspx#workspace_server_offline and TE information for Eclipse is here https://msdn.microsoft.com/en-us/library/hh913026(v=vs.120).aspx... other platforms, for example, Objectivec uses Git from TFS, and then the instation is Git for Mac, which downloads on the official website https://git-scm.com/ and other features use Web Access.
– egomesbrandao
@egomesbrandao you’re right, I gave an improved, see if it is ok now, thank you.
– Maniero