I'd use sandcastle (from MS, it's on codeplex). It's arcane, but there are a couple of open source UI's for it. We use a commercial toolkit, DocumentX for the .NET 2.0+ docs. It's not really that great. it works, but it's a bit slow and sometimes it falls over.
There are a couple of ndoc forks though, some work 'ok' for .net 2.0 code however they too aren't mature enough. But perhaps today they have evolved in workable code, not sure.