you can use
System.DateTime.Now.Ticks
to generate a long value and use that as a serial key. Generate it uniquely for every user and store in DB so that no single serial key can be used on 2 different apps. You can even XOR it to a prime number to make it more random and unpredictable for securing it. In the days of VB6, i used to achieve this using
FileSystemObject
class which was used to get the serial number of the hard drive of a computer and used that as a serial key. So if someone tried to use the app on a different computer, it wouldn't work because the hard disk is different. You can try finding similar thing in C#, i m sure it must be there. All you need is a bit of imagination to achieve what you want to achieve.
Hope this helps.
Cheers