This shield allows you to plug into an Ethernet port to connect your Arduino to the internet. If you want to power your Arduino with the same Ethernet cable (using PoE, or Power over Ethernet), you'll either need to buy an add-on or just get this shield instead. Adafruit also sells an Ethernet shield that comes with a MicroSD card slot included.
This allows you to connect wirelessly to the internet using the 802.11 (WiFi) specification. It comes with a MicroSD card slot for storing data. Sparkfun also sells a different model for use with the TI CC3300 WiFi module, and Adafruit has its own model that comes with an antenna for better reception. Once you're online, the possibilities are endless!
These shields are configured to work with an XBee chip. XBee functions similarly to Bluetooth, allowing devices close to eachother to communicate wirelessly. This is only useful if you have several devices, shields, and chips - one by itself won't do much. However, put them together, and you can have an Arduino/XBee party!
As the name implies, this shield allows you to connect to GPS. You'll need to buy the receiver separately. Adafruit's model comes with a MicroSD card slot so you can store the data you're logging for later use.