“What is the difference between GPLv2 and GPLv3?”

The short answer is that GPLv3 was created mostly to prevent “Tivoization”. It also specifically allows those caught in violation to have some time to change to be compliant (rather than immediately sued by extremists).

Linus describes he likes GPLv2 because “it’s a great license.”:

“I give you source code. You give me your changes back. We’re even. That’s my take on GPLv2. It’s that simple. … [under GPLv3] I give you source code and you can’t use the source code on your device unless you follow my rules.” (Linus, Deb Conf)

Linus goes on to call the “sneaky stuff” that FSF did “downright immoral” by trying to essentially change the license by calling it still the same thing.