Doesn't even have to be online, Bitcoins also work really well peer to peer (unlike credit cards), and things like NFC-capable phones can take advantage of that in-person someday soon.
It's a completely independent currency, so products and services must begin to accept Bitcoin before you can use it to pay for things. That is, it's not interchangeable with debit or credit cards, so you'll need to acquire Bitcoins before you can do any of that (by buying them or earning them or mining them).
On the upside, it's much easier to send and receive Bitcoin payments than it is with credit cards. There are no "merchant accounts", nothing you need to fill out, no barrier to entry. Just run the Bitcoin daemon, it even has a convenient JSON-RPC protocol.