I understand that no method of software protection is completely secure, and I'm not asking for such.
My goal is to protect my investments and make it more difficult (not impossible) for would be crackers to break.
I have a solution that works very well for me now, its one of the ones already listed in this thread.. however I'm not sure about the future of this solution as an option for us, as their prices and methods of licensing are drastically changing.
The ideal solution for me, and for many .net users I'd imagine is something that:
prevents viewing the MSIL from both a reflector type app and also via RAM dumpers.
Packs the exe into a loader application that isn't easily unpacked.
Prevents .net extraction via modification of the native core .net dll's.
Prevents debugger attachments, softice, etc...
Disables .NET profiling
Protects against ProcDump
Does not require packing the entire .net framework into the exe to achieve the above protection
That is my ideal list. I'm just trying to come up with a list of solutions that achieve this type of protection.
According to my research, CodeVeil has unpackers available.