Question: I don't really care about encoding and stuff, as long as I get back the exact same byte array.

So to sum up: How do I convert a byte array into a string, and then that string back into the same byte array I started with?

Answer: 
You can just use the `Convert` class as below.

```
/// <summary>
/// Converts a string to byte array
/// </summary>
/// <param name="input">The string</param>
/// <returns>The byte array</returns>
public static byte[] ConvertToByteArray(string input)
{
    return input.Select(Convert.ToByte).ToArray();
}

/// <summary>
/// Converts a byte array to a string
/// </summary>
/// <param name="bytes">the byte array</param>
/// <returns>The string</returns>
public static string ConvertToString(byte[] bytes)
{
    return new string(bytes.Select(Convert.ToChar).ToArray());
}

/// <summary>
/// Converts a byte array to a string
/// </summary>
/// <param name="bytes">the byte array</param>
/// <returns>The string</returns>
public static string ConvertToBase64String(byte[] bytes)
{
    return Convert.ToBase64String(bytes);
}

```
You can use Convert.ToBase64 documentation <http://msdn.microsoft.com/en-us/library/dhx0d524.aspx>