Во-первых, вы уверены, что NetCDF - правильный выбор? Если вы хотите взаимодействовать с другими программами, которым нужно читать большие объемы данных, и они уже поддерживают NetCDF, то это, вероятно, отличный выбор. Существует не так много стандартных и хорошо поддерживаемых форматов файлов, которые поддерживают большие многомерные массивы. Но если вы собираетесь только читать и писать файлы из C #, это может быть не лучшим выбором.
Я большой поклонник "классического" формата файлов NetCDF. Он компактен и чрезвычайно прост, но достаточно гибок, чтобы поддерживать множество распространенных видов многомерных хорошо структурированных данных. Мне потребовался всего один день, чтобы написать полный синтаксический анализатор для классического NetCDF, и потребовался всего час, чтобы написать программу для вывода правильно сформированного специального случая классического файла NetCDF. Вы можете самостоятельно реализовать чистую библиотеку C # NetCDF, и это не составит большого труда. Вы можете легко начать с реализации только тех функций, которые вам нужны. Вот спецификация.
К сожалению, NetCDF-4 решил использовать HDF-5 в качестве формата данных. Это добавляет много сложности и значительно усложняет написание полного синтаксического анализатора NetCDF на другом языке. HDF-5 очень универсален и, на мой взгляд, он был слишком силен - он пытается быть слишком многим для слишком большого количества людей. Я бы не рекомендовал пытаться работать с ним напрямую, если вы не планируете тратить месяц на написание юнит-тестов. Если вам нужно использовать netCDF-4 / HDF-5 из C #, единственным реалистичным вариантом будет обернуть библиотеку C с помощью SWIG или чего-то подобного.
Обратите внимание, что NetCDF для Python - это просто оболочка для кода C, так что на самом деле он не так уж полезен; если вы собираетесь использовать обернутую библиотеку C, вы можете просто написать оболочку C #, а не использовать Python в качестве промежуточного слоя.