If you really think you need it, thoroughly review this idea. This is .NET. The manufacturers of the reverse-engineering software claim that even the strongest well-known protection software it quite easy to break, and I tend to believe that. Normal user won't even try it, but those determined to reverse-engineer your code will do it easily. Well, you can obfuscate your code just to make understanding of the code difficult, to filter out just lazy users like typical CodeProject enquirers.
Also think, is your software that valuable? Most software products don't worth the effort.