Not to mention the .NET runtime, dllhost.exe also hosts COM+ processes. So how can you tell what each dllhost.exe is running? Download tlist.exe (part of the Debugging Tools for Windows). You can read more about the util here: http://msdn.microsoft.com/en-us/library/cc267860.aspx
It’s just a simple task list viewer that displays info about the process. There are tons of utils out there than can do the same thing but tlist.exe is a mere 50 KB command line util which is why I like to keep it around for quickly gathering info.
The command I use to check the dllhost.exe is:
tlist -k | find /i "dllhost.exe"
and it outputs the processes, process IDs, and the related COM+ process.