OpenXML очень быстр но там много разной низкоуровневой ерунды которая врят-ли будет нужна, хотя если разберетесь то это будет самы быстрый вариант, а так, хороший выбором будет либо EPPlus либо ClosedXml.
Могу ошибаться, прошу экспертов меня поправить, насколько я знаю чтение и запись в БД всегда медленней чем при взаимодействии с файловой системой ( с кешированием данных в памяти это может быть не так, но это достаточно расточительный способ использовать всю память). Для получения доступа к файлам требуется прохождение через ваше приложение и слой взаимодействия с БД (DB layer).
Использовать одну технологию для разных платформ это сделать плохо везде, лучше сосредоточить внимание на какой то одной, либо изучите все нативные средства для всех и делайте под каждую свой проект.
Да возможно причем C# позволяет сделать достаточно разухабистую CRM.
Вы можете сделать как нативное сетевое приложение для windows платформ , так же C# позволяет сделать ваше приложение платформонезависимым, проще говоря вы можете серверную часть написать на .Net Core которое будет у вас крутиться на Linux сервере, а мордочку CRM написать на javascript
var ms = new MemoryStream();
var originalStream = File.Open(...));
originalStream.CopyTo(ms);
var document = SpreadsheetDocument.Open(ms, true);
document.Close();
var blob = ms.ToArray();