Selenium is a tool for web developers which lets you create integration tests for your website across different browsers. It simulates and automates user behavior and can save developers a lot of work. If you are interested in how reliable and effective functional tests for dynamic web applications with Selenium can look like, take a look at this.
So, what has changed?
Okay, good news first. The biggest change is that the old Selenium Core was replaced by a new implementation with WebDriver Interfaces which allows for controlling the browsers remotely. This does not have a direct impact on the user and will not break any code using the WebDriver API. The good news is that for users of the WebDriver API, the new version of Selenium will act more like a drop-in replacement because the API has not changed.
Now to the bad news. In the course of the core changes in favor of the WebDriver API, the Selenium Remote Control API will no longer be supported. Everything which did not conform to WebDriver was moved into a legacy package, and you are not supposed to use it any longer as far as possible.
Selenium Grid was changed just a little. Among other things, the new format for the configuration is JSON. And there is no longer the option to use comments in the configuration files. So it is no longer possible to parse directives in them, either.