What is the difference between Static class and Singleton instance in C#?

CsharpServer Side ProgrammingProgramming


  • Static is a keyword
  • Static classes can contain only static members
  • Static objects are stored in stack.
  • Static cannot implement interfaces, inherit from other classes


  • Singleton is a design pattern
  • Singleton is an object creational pattern with one instance of the class
  • Singleton can implement interfaces, inherit from other classes and it aligns with the OOPS concepts
  • Singleton object can be passed as a reference
  • Singleton supports object disposal
  • Singleton object is stored on heap
  • Singleton objects can be cloned
  • Singleton objects are stored in Heap
Updated on 08-Aug-2020 08:32:54