As the name suggests exploratory testing is about exploring more into the software and finding about the software.
In exploratory testing tester focuses more on how the software actually works, testers do minimum planning and maximum execution of the software by which they get in depth idea about the software functionality, once the tester starts getting insight into the software he can make decisions to what to test next.
As per Cem Kaner exploratory testing is “a style of software testing that emphasizes the personal freedom and responsibility of the individual tester to continually optimize the quality of his/her work by treating test-related learning, test design, test execution, and test result interpretation as mutually supportive activities that run in parallel throughout the project.”
Exploratory Testing is mostly performed by skilled testers.
Exploratory testing is mostly used if the requirements are incomplete and time to release the software is less.