The wallet tries to make it so the concept of transferring money occurs in a familiar context.
Technically, however, it does not work the way it seems. Bitcoins don't "transfer" from one wallet to the next. Transactions are simply ledger entries. The wallet holds the private keys necessary to create a transaction that spends from the coins received.
So the client will compute a total, and show transactions. But all that can be done using the blockchain, without even having the wallet.dat, and instead just knowing which Bitcoin addresses were in the wallet.
That's what a service, BTCBalance.net offers:
- http://btcbalance.net