Francesco
Balena has an interesting post where he reveals a misterious assembly
attribute:
<Assembly:
System.Runtime.CompilerServices.SuppressIldasm()>
This attribute (where is the documentation???) can be used to obfuscate an
assembly from ILDASM.EXE (the .NET
Framework MSIL Disassembler). If you try to decode an assembly that has
this attribute, you obtain this error message:

Wow, an embedded obfuscator???
No... it's only a basic way to obfuscate
your code, because this attribute protect your assembly only from decoding
it via ILDASM. If you use other tools (such
as Reflector) your assembly will be decoded. 
So... why this method? Only to have a basic obfuscator
feature?