I think your problem may be the key :
GenerateKey()
If you are generating a random key you will get an exception becuase a file needs to be decrtypted with the same key it was encrypted.
unless you are creating an application that is supposed to hack the key using a dictionary or brite force attack , but even though the algorithm isnt the strongest if they key is long that will take a while.
Also can we see the encrypt command , did you encrypt the file . Make sure you are using the exact same algorithm and encoding that encrypted it.
Heres a brilliant article to get you started on encryption and decryption.
Simple encrypting and decrypting data in C#[
^]