6 AnswersNew Answer
First off, "hacking" is an umbrella term that could mean many things. Do you mean modifying software post-compilation? Do you mean breaking account security? Do you mean taking control of another's computer? Mind you all of those are normally illegal. That being said, it's good to learn about the techniques they use to accomplish these tasks so you can defend your code. Penetration testing is typically done by sending special packets of information to several ports on the target machine amd seeing if they respond. There are programs for virtually every OS that can do this. Linux is not special in this case. The only thing it can do that Windows can't without special software is use raw sockets. This is for security reasons, as raw sockets are basically a gun in an unlocked safe, they can really screw things up if you're not careful.
I think Linux is useful for hack and the first step to start in hacking and penteration
Kali Linux is very specified and thought for the use in a VM. I've been on it for short time as a daily driver, until I scrubbed it in hatred. If you instead want a pentesting OS to actually work on go with Parrot OS. Toolwise, I would agree with Kay/Nemo Recommendations can't be done without further information. However, if you want to go into Hacking for the sake of unethical and criminal activity, be aware: most Hackers are better than you and will find a way on your system, to destroy your entire life. Friends, Family, Bank accounts, all playground to people that you mess with. If you instead insist to do other people harm, you shall be warned that big brother is watching you and he is not nice. Cyber criminality is still criminality.
My recommendation would be to download Kali Linux, whether on a virtual machine or not. Kali Linux has many built-in tools for pen-testing.