Как уменьшить расход памяти в DataGrid у WPF?
Однозначно нужен постраничный вывод. Никто такие объемы за раз не выводит.
В крайнем случае подгрузка по мере скрола, с удалением из грида верхней части.
Даже в ширину не обязательно все выводить, можно не самые критичные данные скрыть за кнопочкой "подробнее" и подгружать для просмотра по клику как дополнительные данные.
Еще необходимо посмотреть на код DataGrid'а. Похоже, что Вы выключили в нем виртуализацию.