Bought both. I really really try to be Steam only to have my PC collection in one place, but there's no way steam achievements, steam friends lists, and having it in your steam games list is worth an additional $25. Eventually when both Batman games are $5 on steam I'll rebuy them down the line to have in the steam collection.
I don't play multiplayer games, I don't really play shooters, I've never played a Battlefield game before, I don't play CoD online. But damn it, the graphics in BF3 are too good to pass up giving the game a shot. Will run through the supposedly mediocre campaign for the visuals and play a few matches for the visuals and get my $30 worth.