Mail.app and Gmail - All Functionality All,

I have Gmail and I'm currently using the Sparrow application, but I wanted to see if Mail.app was able to handle what I need.

1) Archive AND delete functionality side by side. - Yes, I archive some things I want to search later and delete other things. Last time I checked, it was only one or the other.

2) Labels

Basically, (almost) everything that is available in the web interface.
Actually Mail 5 (i.e. on Lion) handles Gmail much better than on previous cats. 

1) There's both Archive and Delete buttons. I think the Archive button isn't visible by default. Right-click (or control-click) the toolbar to "Customize Toolbar..." and you should see the Archive button. Drag it up to your toolbar. 

2) @adam-rice is correct that there's no direct analog for Labels in Mail. They are remapped to folders. If you just pretend Folders are Labels this does work pretty well. Mail does download a copy of a message for each folder/label it resides in. On previous versions of Mail this would clog up some inboxes/folders with the multiple copies. Mail 5 now recognizes and hides duplicates, though; it seems specifically designed to handle Gmail labels. In Mail's beautiful threaded conversation view you'll just see the one copy of each message, though you will see a note that it has duplicates.

With Mail 5 you can get pretty close to what you can do in the web interface. You might need to remap some keyboard shortcuts. Let Gmail's server do a lot of the heavy lifting. Go to Gmail settings>> Labels tab and check or uncheck the "show in imap" box for some inboxes/labels you don't want to see in Mail. I turn off the "All Mail" inbox and basically archive my emails out of Mail.app and keep them on the server. I also uncheck the spam inbox. Check the "important" inbox to recreate the priority inbox back in Mail.