Neither do I. One hour isn't really that much. 20 minutes feels like a quickmatch in COD unless there's several rounds. 2-3 hours is good for one match.
I have to disagree with you on that one.
I've played COD before, and most games were barely longer than 5 minutes. 15 minutes at maximum. Which I feel is too short.
Battlefield takes about 8 to 12 minutes on average(on 300 ticket servers), which I feel is too short.
Yet ARMA kind of has 2 to 3 hours for a good match. Which I think is way too long.
I really don't have 6 hours a day to play games. I get to play 1 to 3 hours per day at maximum, with exception of the weekends. During that time, I usually like to play 1 or 2 games.
If it takes 2 to 3 hours to complete one match, then I can promise you that not many adult gamers will ever be able to finish a match. I really hate having to play a game for longer than I want to just to finish the round so my progress and such gets saved.
Yet if they allow you to quit at any time, then you will see ragequitters and a lack of team balance being a huge issue.
In the end you want matches to be around 20 to 30 minutes, maybe 40 minutes for some games. But there really isn't much reason to make rounds last beyond that point.
People need to rest as well, playing for 2 to 3 hours in a row without drinking is not healthy at all.