I think you could probably achieve your goals with something like Wordpress. The real issue is a trade off between flexibility, optimization for the task at hand and the complexity of the job.
You essentially have three options (in order of increasing flexibility and steepness of learning curve):
Use a blog engine like Wordpress. It is very customizable and you can move quite (even very) far from the traditional blog format. The further you stray, the less optimized WP will be (mostly in terms of the number of SQL queries it does in the background). The learning curve is very forgiving though.
Use a more flexible CMS like Drupal or Joomla. Here you will have more control and flexibility, but still some constraints. And it will be harder to get going in the early stages.
Use a general web application framework like Zend, Cake PHP or CodeIgniter. Like the blog engine and the CMS, the framework will provide a lot of the foundation (database abstractions, forms management, sessions management, etc.), but it will be much more flexible. It will also be much harder to get something basic up and running relative to a blog or CMS.
All of the examples above are PHP based, but someone with more .NET experience might be able to point you to equivalents in that world.
Also, for #3, there are some frameworks that have exploded in popularity over the last several years: Ruby on Rails, which uses Ruby, and Django, which uses Python as the programming language. I have recently started using RoR and maybe its just the honeymoon, but I'm loving it.
Finally, there is a #4, which is just code everything yourself from scratch, but that seems like a crazy choice these days, given the enormous amount of solid, secure open source code that is available (and with a community to support it).