An essential big difference is the fact that interfaces might have properties although not fields. This, to me, underlines that properties needs to be used to define a class's public interface though fields are supposed to be used in the non-public, internal workings of a class. As being a rule https://thebusinessherald.blogspot.com