Selenium RC(Remote Control) and Web Driver differ in many aspects but the key difference comes in the implementation layer or in simple words the architecture of both of them.
As name suggest, RC is a Remote Control which works by taking the remote of the browser and then injects the automation code to be tested by injecting the custom scripts written. Whereas the Web Driver works on the browser directly and uses browsers in-built features to trigger the automation test written by tester. Web driver is the successor of Remote Control.
Both the frameworks have common features which include use of programming languages in designing of test cases, since both of these frameworks allows us to use multiple programming language to develop automated test scripts which eases the work of tester as he gets to program in the language of his choice. Not only this both the frameworks can be used with multiple browsers to execute the test cases.
From the efficiency point of view, we can say that web driver is faster than Selenium RC owing to the architectural advantages it had.
If we discuss it from the report point of view, RC had an advantage since it gives user automated HTML file of test results while this feature is not present in the Webdriver. But that shouldn’t be a reason to worry since we have some good libraries like TestNG which can help us achieve the same.
Web driver comes with another advantage which is its use on HTMLUnit browsers(HTMLUnit browser are headless browsers which means these are invisible to the user, in simple words they have no GUI), due to these testing on HTMLUnit browser is faster as these browsers save the time needed to load the page elements. This results in less execution time for test cases.
So to conclude below are the difference between the two −
As WebDriver controls the browser from OS level hence its more speedy than selenium RC.
WebDriver has more simpler and user-friendly commands.
Web Driver can support HtmlUnit while Selenium RC cannot. HtmlUnit being headless takes no time in page load hence accelerates the execution cycle.
WebDriver cannot support new browsers. Configuration of new Browsers needs to be implemented in next WebDriver release. While there is no such limitation for Selenium RC.
WebDriver cannot automatically generate Test Result file by any built in command while Selenium RC automatically generates an HTML file of test results.