Control Flow Obfuscation
Dotfuscator Professional Edition employs advanced control flow obfuscation. Traditional control flow obfuscation introduces false conditional statements and other misleading constructs in order to confuse and hopefully break decompilers. Instead of adding code constructs, Dotfuscator works by destroying the code patterns that decompilers use to recreate source code. The end result is code that is semantically equivalent to the original but contains no clues as to how the code was originally written. Even if highly advanced decompilers come to pass, their output will at best be guesswork.
For details, see the online user's guide.