Как правильно передать массив байт из приложения .NET Core, при помощи web api?
Раньше в js не было типа byte, поэтому массив байт кодировался в base64 string и отправлялся в строки. Скорее всего у вас происходит тоже самое. Попробуйте декодировать пришедшие байты с помощью Convert.FromBase64
попробуйте при помощи 
new HttpClient().GetAsync() - тогда в ответе будут именно те байты, которые нужны.
WebClient - легаси
И возвращать из контроллера byte[] или Stream
ByteArrayContent - это для клиента.
Если вам нужно вернуть файл, а не произвольные байты, то тогда делайте return File(...);