1000 строк каждый раз, когда пользователь нажимает кнопку. Было бы это пустой тратой времени
Да. ВСЕ, что связано с человеком, является мусором, когда вы говорите о файлах конфигурации размером 1 ГБ - особенно, если это не связано с какой-либо функцией поиска и включает сканирование глазного яблока человека. Это НЕ будет работать, если вы не говорите о чем-то вроде заголовка (то есть о верхней части файла). Период. Это решение, которое работает - для какого-то человека-киборга, которого не существует.
Есть ли лучшее решение, которое можно было бы реализовать в c#?
Осмелюсь сказать, что хорошего решения нет. Какой-то редактор, показывающий json в качестве альтернативы дереву с МНОЖЕСТВОМ функций поиска И какой-то функцией пути, ВОЗМОЖНО, был бы лучше, но также и много работы. Проблема в том, что файл размером 1 ГБ json - это не то, что вы можете просмотреть, точка. Люди такие, какие они есть.