Steven Masters, the Lead Game Designer of Assassin's Creed III, told GamersNET during a behind closed doors session that the singleplayer mode of Assassin's Creed III takes about 20 to 25 hours to complete. However, this time can vary depending on how many sidequests you play. Also, Masters told during the demonstration that the game contains 2,5 hours of Naval Battles (which were seen during the latest Gamescom trailer). Read more at the link.
If the Xbox got exclusive content, I'd bet that the same people agreeing with your comment would be complaining about it (and rightfully so, too). But of course, now that the PS3 is getting exclusive content it's considered a good thing? Sad.
But I also think a game should only be long enough to tell the perfect story. Not too short and lacking...and not so long, repetitive and feeling like a chore.