A property is a function call, but it is generally a trivial one that can be inlined.... at least as long as it is final and you use the right compiler setup (gdc -O or ldc's optimization. a quick test is showing me that dmd -inline does not inline it though!).
So right now, if you are using gdc or ldc, a final property is free because it will be inlined and optimized. A virtual property function I'm not sure about. If you are using dmd, there's a small cost of a function call, so if it is a tight loop, you'll probably get a speedup with a public field.