The static modifier, keeps the method,property, or field "static in memory". That means it persists and you don't need to instantiate it. You use them all the time when programming in .NET... one very good example is when you use any of the public members of Console such as Write() or Read(). The wole point behind a static keyword is to allow use of the so&so method/field without creating a new instance... How else would you be able to run any of the programs you write? Look at the general structure of a Main method. [STAThread] public static void Main(string[] args) { Application.Run(new Form1()); } you can run Main at anytime, and you create a new instance of the Form1 and then the program runs. Also, Application.Run() happens to be a static method as well :) Got a coding problem? Hand it to the CodeDevil!