Mark Radcliffe has made a
very good comparison of the version 2 and 3 of the GPL. One thing
he doesn’t mention though is the or any later version clause,
which means that you could already redistribute a good amount of GPL2
software under the GPL3 license if the authors included the default
boilerplate text in the file headers that says either version 2 of
the License, or (at your option) any later version..
Each version [of the GPL license] is given a distinguishing version number. If the Program specifies a version number of this License which applies to it and "any later version", you have the option of following the terms and conditions either of that version or of any later version published by the Free Software Foundation. If the Program does not specify a version number of this License, you may choose any version ever published by the Free Software Foundation.
For instance the Linux Kernel (by omission) or the JDK
classes (explicitly) are licensed only with GPL2.