Let me tell you that this is nasty. I would advise you to think and weight million times before you decide to introduce such a draconian limitation on your users. Think is your video is really that valuable that anyone would want to steal it.
Let me also tell you that, in principle, given enough time, resources and money, and, more importantly, convincing moral and legal justifications of such work, I could personally take a job of picking your media files, no matter how strong encryption you use. Why? Simply because once you already delivered the medial on the client's screen, it's already there.
And finally, how is this related to C#. I guess, you want to develop everything, including your special decrypting player, in .NET. Then let me tell you the final thing: everything which works as a code of .NET assembly can be easily
reverse-engineered. Even if the software is protected, especially if it is protected with one of well-known software protection tools or simply obfuscated. And once it is reverse-engineered, the code can even easier be modified into… anything at all: media decryptor, converter into legitimate media or something else.
And mind you, it is not related to your encryption. The encryption may be infinitely hard to break, but nobody will need it: if your special player can play your encrypted media, it can convert it to legitimate formats, actually using the same decryption process you would devise.
So, you have no chance. But you are warned.
Take it easy,