Without a blockchain fork, there are a couple other double spend attacks as well:
Not all double spends attempts are intentional even. Take the scenario where someone who imports their private key from a wallet.dat into Blockchain.info, for example, and then spends the one in blockchain.info. Then the bitcoin-qt is launched but it hasn't caught up on the blockchain and a payment is sent, which happens to spend the coin that was transferred to blockchain.info. That would be a double spend. That can happen seconds apart or months apart.
Thats very interesting. What does BTC do when this situation arises? Would the second tx not be allowed? .. even tho the double spend wallet hasnt caught up w/ its blockchain yet? The peers, I hope, having an updated chain when it announced the tx to the network will reject it .. because they have an updated block chain.
The second would be considered invalid, and simply ignored by most peers & miners. It wouldn't even propagate past a full client.