Lectura de ficheros binarios

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.IO;

namespace ConsoleApplication1
{
    class Program
    {
        static Encoding enc8 = Encoding.UTF8;
        static void Main(string[] args)
        {
            BinaryReader ficheroexe;
            string nombre;
            byte Dato1, Dato2;
            Byte[] Datos = new Byte[2];

            Console.WriteLine("Introduzca nombre de archivo ejecutable:");
            nombre = Console.ReadLine();

            try
            {
                ficheroexe = new BinaryReader(
                    File.Open(nombre, FileMode.Open));
                Dato1 = ficheroexe.ReadByte();
                Datos[0] = Dato1;
                Dato2 = ficheroexe.ReadByte();
                Datos[1] = Dato2;
                Console.Write("Los dos primeros bytes son {0} {1} =  ",
                    Dato1, Dato2);
                Console.WriteLine(enc8.GetString(Datos, 0, 2));
                
                Console.ReadKey();
            }
            catch (Exception error)
            {
                Console.WriteLine(error.Message);
                Console.ReadKey();
                return;
            }
            ficheroexe.Close();

        }

    }
}