I want to learn to make videos like this one, where should I start? And what tools I can use?
There are many different ways to accomplish this. You will have to pick an animation software like Adobe After Effects. There are many different 2D animation programs, all of which do certain things better and other things worse than the alternatives. Which you pick depends on your preferences and what you want to accomplish in detail. I would recommend After Effects, since it is very multilateral, however you should take a look at this list to get an overview and decide by yourself.
Another option is to start with 3D animation software, in this case you could start with Blender (freeware and relatively easy to learn), Cinema 4D (expensive and powerful) or Maya (free for students and used for professional works), or chose a program from this list.
I have to warn you though: 2D and 3D animation is very difficult. It will most likely take some time and effort for you to be able to create videos like the one you linked.