What it's saying is that the value in Azimuth is too big for a byte: it exceeds teh maximum value of 0xFF or 255 that a byte value can contain.
For example:
int Azimuth = 0x1234;
byte b = Convert.ToByte(Azimuth);
Will throw the same error.
To fix that, mask it:
int Azimuth = 0x1234;
byte b = Convert.ToByte(Azimuth & 0xFF);
Or better:
int Azimuth = 0x1234;
byte b = (byte) (Azimuth & 0xFF);
In your code that would be:
byte[] bytesToSend = new byte[7] {0x7E,
0xD6,
(byte) (item3.Azimuth >> 8),
(byte) (item3.Azimuth & 0xFF),
0x20,
0x00,
0x40};