Bitcoin is pseudo anonymous. Everyone knows about all the transactions - they are kept in the block chain that all the clients have, you can only try to hide the real identities of the persons involved in transactions, and that is still quite hard, and anonymity could be attacked using different techniques (see Tor anonymity problems)
It was a bit harder(more costly) before Bitcoin to send small sums "anonymously", but if you have millions or billions there is a whole industry of lawyers/accountants/bankers to help you out. So in that perspective Bitcoin brings anonymity to the common people, lowers the barriers to entry, or you can also say that it brings the era of financial democracy upon us :)
Tor type attacks won't work here. Why? Because transactions go to everyone. Bitcoin "addresses" are really key fingerprints -- it's impossible to know who has the key to decrypt a given Bitcoin. It's equivalent to sending everyone in the world an encrypted email; if you send it to everyone, how do you know who the intended recipient is?
On the other hand, once you receive bitcoins at an address, you have to reuse that address in order to finally spend them, which interrelates the transactions in a way that's visible to everyone. The only way to limit traffic analysis is to use and trust some service like the bitcoin laundry, which will accept coins from one address and send distinct coins to another address.
But the block chain remembers the current owning address of coins. You can't create a new address and use it to spend coins which you received at an old address, for the same reason I can't spend coins which belong to you. (You could transfer coins between your own addresses, but that's also publicly visible and wouldn't solve the traffic analysis problem.)
There is no elephant here.