I think from a developer's perspective it would be an open modular architecture. IMHO there are always things to add which the CMS platform isn't providing out of the box. Also, it should be database-based.
Existing modules should cover the most important tasks: news, contacts, documents, forums, shop, survey, events, image gallery, navigation, links, fulltext-search, login, newsletter, etc.
From the user's perspective I think that the content editor (WYSIWYG) is the most important piece. The ability to edit inside the "live" page is a great feature. Upload of images with automated resizing and the upload of files should be easy.
The existence of page/control and website templates is also very helpful when you're starting with a CMS. Versioning of documents/pages is also a often required feature and a work-flow engine, where there are authors who create content and editors who are allowed to unlock it.
RSS syndication is another important feature that should be available in a modern CMS.
For international site it very important that the CMS had some sort of built-in multi-lingual support.
Then I think a good CMS nowadays must provide tools for Search Enginge Optimization, e.g. there must be a way to define and insert search engine friendly URLs.