Мне понадобилось невероятно много времени, чтобы понять. Стандартная реализация C #, GZipStream имеет ошибку в том, что она не поддерживает сцепленные файлы gzip. Он будет распаковывать только первую часть файла gzip, созданного в результате объединения, и сообщит об окончании потока после этого.
Вот пример, который будет работать для сцепленных файлов gzip:
new StreamReader(new ICSharpCode.SharpZipLib.GZip.GZipInputStream(Console.OpenStandardInput()));
Вы можете получить нужную библиотеку из nuget. Я рекомендую версию Jetbrain, JetBrains.SharpZLib.Stripped. Nuget выдал ошибку, когда я попытался использовать другую опцию в проекте ядра .net