As far as I know, VisualSVN Server is a server while TortoiseSVN is a client. But I can also create repository with tortoise svn only, without needing Visual SVN.
What is the difference between the two or am I missing something?
The difference is that the repository you create with TortoiseSVN client is a local repository on your machine. But that repository is of the same kind as the one the Visual SVN server (or any other SVN server) uses. If you move your locally created repository to your svn server you can access it via the server instead.