Должен ли я открывать каждую вкладку / текстовый документ в новом потоке или процессе?
Нет.Определенно не новый процесс.Количество Win32, чтобы собрать все воедино, заставит вас ненавидеть себя.
Также не новая тема.Интерфейс Winforms работает в одном потоке отправки.Попытка прикоснуться к пользовательскому интерфейсу из разных потоков заставит вашу программу взорваться.
Я бы порекомендовал просто использовать проверенный, верный и скучный подход background worker .Это можно использовать с потоками или просто с помощью асинхронного ввода-вывода (.NET обрабатывает многопоточность за вас).В зависимости от вашего варианта использования вы можете просто загружать части файлов с отложенной загрузкой, вы можете использовать сопоставленные с памятью или файлы с произвольным доступом (например, читать только в очень небольшой части файла)вовремя).В любом случае «данные» должны быть отделены от визуализации упомянутых данных.
(Акцент добавлен в условия поиска.)