3F/DllExport
Weird Ways to Run Unmanaged Code in .NET
nettitude/RunPE
0xd4d/dnlib
Play with this. Lets you read .NET assemblies into and out of memory.
Alternatives to P/Invoke or D/Invoke