Disclaimer first: I really like GMail. Since I started using it (about year ago), I learned to appreciate the beautiful simplicity and elegance of the Web interface. And since I switched completely to GMail as foundation of all my email systems (about November 2006), I have managed to simplify most of my email related chores. But let's face it - GMail is far from perfect. Here is list of the annoyances and missing features that I have collected:
It is there. It is free. It works. (Hey, Yahoo! - paying attention: available and free). So what is the catch ? It is single client POP solution only. As soon you download the email with ANY POP client, neither of other clients will see this email message as new and download it. This solution works for those who (as myself) use Web interface only and have single, permanently running POP email client (e.g. Thunderbird) just to keep backup copy of all email. For this purpose, it works perfectly - and you will appreciate that GMail will send to POP client even the Sent emails, not only received. If you are, on the other hand, using simultaneously a notebook with Outlook, desktop with another POP client AND Smartphone and would like to have all your emails downloaded on all of them all the time, you are out of luck.
Even with the first "backup only" scenario, I do run into troubles from time to time: if my "backup client" on desktop stops working (either machine is down or the Thunderbird hangs) , and I start Mail.app on the Macbook - "wroooom" - it downloads all new emails without merc, which means they will never be included as part of my backup (unless you manually transfer them, which is major P.I.T.A)
Last issue with POP access is tagging within downloaded emails: none. Regardless how much time you have spent properly labeling your emails, none of it will ever make it to POP client. Labels are Web Only
What would be the fix ? For downloading, the right approach would be clearly - let POP client decide which emails are "new" in its context. It certainly can be done, because this is the mode in which Rogers-Yahoo! operates. I am not sure whether there is simple solution for the labels download - the problem with labelled email is that most client support only folders and emails can be multi-labelled, which makes it position in folder hierarchy problematic.
According the official mantra, search is better than sort. It may be true, most of the time. I have been often in situation, where I would prefer the sorting. For example by name or by date sent. Or even subject. One feature that I always liked about Outlook was the default "grouping" of emails by time: Today, Yesterday, Week Ago etc. Occasionally, it is also useful to sort by attachment size.
This is, IMHO the weakest point of GMail. The contacts management's UI is far from good. It takes too many clicks to do changes and some simple things are just too frigging hard/impossible: try for example "merge" several email addresses you have collected for the same person, or edit multiple records. I was thinking about using external application to maintain contact list, but GMail does not really synchronize with anything - all you can do is export and import CSV files. The solution would be very simple: just provide the public API for the address book - and the community will take care of the rest.
This very strong, unique feature of GMail works very well, but I see several areas where it could be improved: