There are various ways to make this a faster calculation (if you need speed - and I don't think you do if it's something that only happens from time to time)
One is to cache the .GetField() result during setup in some static variable, and call only .GetValue() when you need it.
A much fancier approach is to write a dynamic method to call it directly (we do this in Project RimFactory to call NoStorageBlockersIn(), which can get called a
lot) - it's harder to manage, but is also faster, so if anyone else needs that, it's an option.
In your case, you probably don't need anything more fancy

Except null checks - because weird things do happen when mods are involved

(I ran into a Thing with a null ...thingClass? once; I didn't think it was possible and yet...)