What is current best practice regarding implementing encryption within a c# program and can anyone recommend some good articles/tutorials/examples?

Basically I want to create an application which makes use of encryption (using standard .net libraries) for internal security features. It will not be used for user accounts/logins but instead for reading an encrypted licence file to verify it is being used on an authorised machine.

If I were to include the key within the code would this be an acceptable implementation or would it be too easy for someone with the right know-how to decompile the program and extract the key? If this is not the best way to do it, what is the alternative which doesn't rely on a user entering a key/password?