P>меняют редко, раз в неделю.
P>читают средне, раз 50 в день, но объем вот написал какой.
P>вопрос больше был не в цикле, а есть ли смысл делать структуру или ридонли поля для оптимизаций или не будет ли static тормозом тут?
Т.е. есть приложение, которому нужно держать в памяти 100K таких записей
(опять же непонятно зачем держать это именно в памяти, а не брать каждый раз из БД, ну да ладно).
И
раз в неделю их пересчитывать? Зачем тут вообще что-то оптимизировать при таких вводных?

Любой вариант будет работать приемлемо быстро.
А микрооптимизации (struct vs class, readonly и т.п.) принципиально ничего не поменяют.