Bitcoins can actually be less anonymous than cash if someone wants to attach their name to an address. I think that's a great benefit over cash. People can choose to either be anonymous or they can link their name to their address. The fact that every transaction is public knowledge is also a big plus. In the event of a dispute you can prove to the whole world that you sent money from your address to someone else's address.