Bitcoin is a digital peer-to-peer currency, created in 2009 by Satoshi Nakamoto. Or as Dan Kaminsky phrased it in a good Wired article: Bitcoin is a dollar bill, with a teleporter built in. Payments are made to addresses, a 33 letter length public key. You can send money from address A to address B, if you know the corresponding private key of address A.
Compared to paper money (fiat money), it has many similar features. First you really own your bitcoins, like money in a wallet. The standard Bitcoin-Qt client program has a virtual wallet, which you can backup to a thumb drive or upload to some internet server (the wallet can be encrypted with a passphrase). A wallet is a set of addresses, with the associated private keys.
There is no central authority who can stop you from spending or receiving money, like we've seen for bank accounts in the Cyprus crisis. And like paper money, bitcoin transaction are non-reversible. If you buy a hot-dog, usually you can't return it and get your money back. The same is true for bitcoin: If you transfer bitcoins to someone, you can't get it back (unless the receiver sends it back to you). This is different from Paypal or banks, who can charge-back money. As with real money, this has its pros and cons.
But there are some differences compared to paper money. All bitcoin transactions are known to all nodes of the bitcoin P2P network. So there is no anonymous coin. Nevertheless it is pseudo-anonymous, because common practice is to use a new address for any bitcoin transaction. So if Bob wants to send money to Alice, Alice should create a new address for you. When the money is sent to this address, the transaction is distributed in the network, but nobody knows who owns this address or the reason for the transaction. A big brother needs to monitor all links between addresses and people to reveal the identity, like all eMail traffic, HTTPS shopping sites, currency exchange sites etc. But for even more privacy, there are [bitcoin mixing services)(http://en.bitcoin.it/wiki/Mixing_service).
Another important difference is the limited amount of bitcoins. In the year 2140 all 21 million bitcoins will be mined. Until then there is a steady stream of new bitcoins, currently 25 bitcoins every 10 minutes, created by the miners. The network and protocol guarantees that no more bitcoins can be mined. This is like gold, which can't be printed by the government for free, but needs to be mined. And bitcoin is based on cryptographic proofs. You don't have to trust someone, like you have to for fiat money.
How to use Bitcoin?
First you need a way to manage your wallet. You can use a PC/Mac app (requires lots of hard-disk space to save the blockchain), your smartphone or a web wallet. One of the first clients, and still widely used, is the Bitcoin-Qt software. It is easy to use and available for Windows, Mac and Linux. With a software on your PC you don't have to trust a company like with web wallets, or for example Apple, who could delete your web wallet program from your iPhone. Once you have a wallet manager, you can create an address and receive money. Services like Coinbase or bitcoin.de helps to find people who want to sell or buy bitcoins. Another way to trade bitcoins, more in the spirit of bitcoin, but not as easy to use, is #bitcoin-otc on Freenode, where you can have a nice chat, too.
Once you have bitcoins in your wallet, you can buy services with it, like a WordPress account or premium Reddit services. Or you can provide services for bitcoin. No one can stop the payments, like Visa did for WikiLeaks, when the US government asked for it. If you transfer money, the transaction has to be integrated in the next block and verified by at least 6 other clients, which needs some time, usually at least the block issue time of 10 minutes. You can speed it up, if you add some fee to the transaction. The miners who create new blocks get the fees and the higher the fee, the faster your transaction will be processed. I've set the fee to 0.001 BTC per transaction in the settings of Bitcoin-Qt and usually I get 6 confirmations within half an hour.
Novel concepts
Another interesting application is to print your own money. You can create a bitcoin address and transfer some money to it. Then print the public address and the private address on a piece of paper. With the public address the receiver of the paper can verify that the money is still at this address (e.g. with blockchain.info) and the private address can be used to transfer the money to another bitcoin address. You should fold the paper that the private address is not readable until unfolded. There is already a website, which creates some nice bills for you. Pay attention to the implementation, because if the website receives the private key, it can steal your money. Best is to open the website, which is implemented in JavaScript on the client site, then disconnect the internet before generating the paper wallet, and cleaning the cache and closing the browser before reconnecting. For more paranoid users, or larger amounts of money: Copy the JavaScript website to a thumb drive, start a read-only Linux system without internet connection from a CD and then use the JavaScript program.
The same website provides another interesting concept: Brain Wallets. As noted before, you create your own bitcoin addresses to receive money. The private key is a long sequence of gibberish characters nobody can remember. A brain wallet is a passphrase, which is converted with hashing algorithms to this address. So you need just to remember a passphrase and then the website creates the public and private key for you (again, you should use it offline). Send your money to the public address and with the private key you can send it again to another address, once you need it. This is useful for long term storage. But you should be careful with the passphrase: Everyone who can guess it, can steal your money. And even more scary: Someone could create a rainbow table of all sentences of Wikipedia, and as soon as a new transaction in the Bitcoin network is generated, a table lookup can give a thief your private key immediately. So use a long passphrase, easy to remember, but not written somewhere on the internet or in some book before, maybe with grammar or spelling errors, or names, dates, special punctuation etc. Importing a private key in Bitcoin-Qt is possible with a command line interface, and more easily with a web wallet, or with the more advanced client Armory.
Bitcoin credit card
If a shop doesn't accept bitcoins, you can use a bitcoin credit card, like from Xapo. This credit card allows you to fill it with bitcoins, but then use it like a normal VISA card to buy things for US Dollar, Euro etc. The bitcoins are converted to the fiat money currency at current market value (plus some profit margin for Xapo).
Conclusion
Bitcoin and other crypto coins like Ethererum, and the underlying blockchain technology, are the future, available now. But keep in mind: Bitcoin is the first P2P currency and still a big experiment. Never invest more in bitcoin than what you can afford to lose. If someone detects a major flaw in the protocol or the cryptography concepts, all your money could get lost.