Selenium is a browser-based functional test automation tool. It is basically a library which you can use in your program to test a web application. It is important to note that selenium is mainly used for browser automation. It is NOT used for unit testing or API testing.
Selenium Webdriver has many language bindings, which means you can write your tests in your favorite programming language and using the respective selenium bindings.