I have an application that loads a DLL to execute a specific part of processing
Example : \"Application.dll\" loading \"Process.dll\"
It's been quite a while since I looked at this but I'm fairly sure that you'd need to create a new AppDomain and then load the DLL inside there.
The reason is that you can't unload an Assembly by it self but you can unload an AppDomain that contains an Assembly.
Here's a CodeProject article that describes how to do this: To Unload a Running Dll