I'm a big Gnus fan. It's been my newsreader for about 10 years, and my mailreader almost since it started supporting mail.
I wouldn't recommend it to an Emacs newbie, but you're obviously not one, so that's OK.
It runs anywhere you have Emacs, so that's your cross-platform portability layer taken care of.
I'm currently running 5.8.8 that comes with Debian woody; its IMAP and MIME support is reasonably complete now (and it has useful features like the ability to read text/plain in preference to HTML in multipart/alternative). I've been using the IMAP backend for a couple of years now, on Linux

and previously on Windows

.
I've no experience of the Gnus Agent (offline support), and I've never had need for anything beyond simple searching in one group - sorry, folder.
Basically, it meets all your requirements and at least your first wish, possibly more.
Like the empeg, Gnus's greatest asset is its active developer and user communities, with a mailing list and newsgroup respectively.
HTH,
