Question: iam developing WPF product. I want to protect my .net source code from reverse enginering 
Please advice me

Answer: 
Obfuscating your assemblies will ensure that it is difficult (if not impossible) to reverse-engineer your compiled assemblies. Obfuscators use techniques like symbol renaming, string encryption, control flow obfuscation to try to obfuscate the meaning of the original code. In some cases, it is even possible to totally hide the code from decompilers (however, decompilers are constantly evolving to overcome this).

Take a look at [Crypto Obfuscator](http://www.ssware.com/cryptoobfuscator/obfuscator-net.htm).

DISCLAIMER: I work for LogicNP, the developer of Crypto Obfuscator.
You can use FxProtect obfuscator. It successfully supports WPF and Silverlight obfuscation.

You can try it... **[.NET Obfuscator](http://www.maycoms.net)**