For .NET, assuming you're comfortable with XSLT, Umbraco - [
[To see links please register here]
][1]
The XSLT qualification is important because that's the basis of the template (for content) system so whilst the end users have no requirement to use XSLT those defining the templates will.
---
Edit:
As we roll towards the end of 2011 there is now an alternative to XSLT, support for the Razor engine is being added to Umbraco and its fair to say that Razor is probably a bit less challenging than XSLT (much as I continute to be impressed by what one can do with XSLT, it does need a different mindset).
[1]:
[To see links please register here]