The best and most succinct explanation that I've seen so far considers the two parties involved - the code itself as one party, and people as the other.
The BSD license frees people. People who use code under the BSD license are free to do whatever they want with the code.
The GPL frees the code itself. Once code is under the GPL, until it falls out of copyright, it cannot be 'imprisoned'. It's free for ever. It accumulates changes which are also free.
Remember that the next time you are confused between Open Source(BSDish) and Free Software (GPLish). The FSF has a definition of 'free code'.
And if you've got similar metaphors to explain the difference to lay-people, I'd certainly like to see them.
- I read this in a /. comment. Not original.
- Yes. I know the GPL does not restrict use, it only restricts distributors' rights.