dotNet Protector Professional

dotNet Protector is a powerful .NET code protection system that prevents your assemblies from being decompiled. Console exe, windows exe and windows services,. You can protect a whole application (main exe, referenced dlls) in a single executable.