In the System.Security.Cryptography namespace the PasswordDeriveBytes class will let you derive a cryptographic key from a password string. You can
then use this key in one of the encryption classes such as Rijndael.

When encrypting/decrypting you can either act on an array of bytes in
memory, or you can use CryptoStream to do stream-based IO but with
cryptography applied.