The pumping lemma starts off as a straightforward application of the pigeonhole principle. If a machine ℳ has n states, and accepts even one string that is of length greater than n, then in the course of reading (and ultimately accepting) that string it must have visited one of its states - s, say - twice. (At least twice: quite possibly more often even than that). This means that if w is a string accepted by ℳ, and its length is greater than n, then there is a decomposition of w as a concatenation of three strings w1w2w3 where w1 is the string of characters that takes it from the start state to the state s; w2 is a string that takes it from s on a round trip back to s; and w3 is a string that takes it from s on to an accepting state.
This in turn tells us that ℳ - having accepted w1w2w3 - must also accept w1(w2)nw3 for any n. ℳ is a finite state machine and although it "knows" at any one moment which state it is in at that moment it has no recollection of its history, no recollection of how it got into that state nor of how often it has been in that state before.
Thus we have proved
It does not imply that if w is a string of length > n that is accepted by ℳ, and w1w2w3 is any old decomposition of w as a concatenation of three strings then ℳ also accepts all strings of the form w1(w2)nw3 for any n: it says merely that there is at least one such decomposition.
You need to be very careful when attempting to state the pumping lemma clearly, as it has so many alternations of quantifiers: There is a number s (actually the number of states in the machine) which is so large that for all strings w with |w| > s that are accepted by ℳ there are substrings x,w', and y of w, so that w = xw'y such that for all n, x(w')ny is also accepted by ℳ. That's four blocks of quantifiers: a lot of quantifier alternations!!
The pumping lemma is very useful for proving that languages aren't regular.
In order to determine whether a language is regular or not you need to form a hunch and back it. Either guess that it is regular and then find a machine that recognises it or form the hunch that it isn't and then use the pumping lemma. How do you form the hunch? Use the thought experiment. If the thought experiment tells you: "a finite amount of information" you immediately know it's a finite-state machine, and if you think about it, it becomes clear what the machine is. What do we do if the thought-experiment tells you that you need infinitely many states (beco's there appears to be no bound on the amount of information you might need to maintain)? This is where the pumping lemma comes into play. You use it to build bombs.
Bombs?! Read on.
Next: 1.4 Bombs