C# Зачем нужны статические классы?

Для каких целей в C# существуют статические классы?

"Статический класс может использоваться как обычный контейнер для наборов методов, работающих на входных параметрах, и не должен возвращать или устанавливать каких-либо внутренних полей экземпляра. Например, в библиотеке классов .NET Framework статический класс System.Math содержит методы, выполняющие математические операции, без требования сохранять или извлекать данные, уникальные для конкретного экземпляра класса Math. Это значит, что члены класса применяются путем задания имени класса и имени метода" - так об этом говорит MSDN.

По сути же, static классы - это классы содержащие глобальные переменные. static поля в публичных классах содержат неизменные данные для вообще всех экземпляров класса. Просмотрите видеокурс, посвящённый C#, и подобные вопросы больше вас не побеспокоят.