I very rarely complete the games I buy. Whether it's ADD or just wanting to do other things in life, I simply don't stick around to see a game through to the end.
I can definitely say part of it is because there are a LOT of games out there to be played. While I'm playing one game, sometimes I get the desire to play another one.
Couple that with the fact that there are many online games that I enjoy playing, that don't really have an end in sight, and you could see why the single player games never see the end.
Steam doesn't make things any easier since they constantly have massive sales on games that I've always wanted to play, so I end up playing part of the new game I just bought, and start to forget about a different amazing game that I was playing before.
Borderlands is one game I've actually played through to the end. Diablo 1 and 2(haven't got Diablo 3 yet) are games I played through to the end. With the way those games are set up, as soon as I get to the end, I end up playing them through again. I like the idea of going back to something that was really engaging, and comfortable. I know what I'm getting in to with the next play through, and there's a certain level of comfort that makes the idea of going back very enjoyable. New games can be unnerving. You don't really want to play a game and miss anything, nor fail, and you run that risk with something new. Or maybe the new game is disappointing, and feels like a waste of time. I only have so much time to work with each day, and I don't want to waste it on anything that isn't worth it.