Geocaching is basically a modern version of a scavenger/treasure hunt but done with GPS receivers. Actually you don't really need a GPS receiver but it's typically standard equipment as caches are called-out with lat/lon locations. Also, geocaching has many sub-activities as some caches involve clues leading to other caches (multicaches) or involve other themes. Some are "contests" put on by people maintaining the caches. Others are contests initiated by the cache-seekers who place objects in the cache. One such popular contest involves a race whereby the a person will release various items into caches to see which ones get the furthest. People picking up the items transfer them from one cache to another and then log it in a website. A cache can have a specific theme too.
Another related activity is benchmarking. The activity has gotten so popular that GPS manufacturers are actually marketting receivers with geocaching-specific features. Check out the
official geocaching website for some more information.
I've been into geocaching for a few years now. I think it's an excellent activity because it gets people outdoors and often "points out" places that would otherwise go unlooked. For instance, I located one cache that was in a very secluded and peaceful spot and next to a very interesting tree. There's a MTBer near me who maintains a bunch of caches.