The big idea in plain words
Binary search is the 'guess my number between 1 and 100' game played perfectly. You guess 50; if you're told 'higher', you instantly forget 1 through 50 and only think about 51 through 100. Every guess throws away half of what's left, so even a million numbers take only about 20 guesses.
Example: find 7 in [1, 3, 5, 7, 9]. The middle value is 5, which is smaller than 7, so ignore the whole left half. The middle of what remains is 7 - found in just two checks instead of scanning all five. The catch: this only works when the data is sorted (or otherwise ordered), because that order is what lets you trust 'go this way'.