What is NFC? NFC stands for Near-Field Communication and is a set of standards (established in 2004) for small, portable devices to establish radio communications with each other. Devices need to be close, usually no more than a few centimeters apart (and often they need to touch), which is why it's a Near-Field way to communicate. The standards cover data exchange formats defined by the NFC Forum (no, not that kind of forum) and are based on the original radio frequency identification (RFID) standards. The forum also certifies devices like tags, cards, and smartphones.
The coolest part of all this is that only one of the devices needs to be "smart." Most of us has a credit card of some sort that we can tap against a payment machine, either at the gas pump or a cash register. Both the payment machine and the credit card are NFC devices, but the card only has a string of information electronically written to a tiny chip embedded inside it. And this is useful for other things, like starting and handling more robust communications like Wifi or Bluetooth, but most often it's used with one of these "dumb" chips. These dumb chips can be written with any information, and the smart device determines what happens when communication is established.
Of course, what most of us here think of when we hear NFC is Google Wallet. Google Wallet takes things a step further by using your Android phone as both a smart device and a dumb device. When you tap your phone at McDonald's to pay for those McNuggets, it's simply sharing your credit card credentials like any card would. But there's functionality and hardware there to accept payments, track balances, provide security and more. Right now it's only officially available as a test on the Nexus S 4G, but it's been hacked onto other phones with NFC hardware. Soon, we'll see it (and other apps for things like ISIS) as a standard on Android phones. Until then, we'll just have to play with tags and Android Beam.