An excerpt from an interesting discussion about why C# interfaces can’t have static members:
Interfaces cannot contain static members because members declared in an interface are inheretly virtual since their polymorphic implementation is assumed. And a static member cannot be virtual.
