Что такое сокеты C#?

Когда говорят про сокеты в C#, что как правило имеется ввиду? Что такое соккеты, простым и понятным языком?

Сокеты - это своего рода обращение к данным, соединение между браузером и сервером в реальном времени. Сокеты - это как альтернатива HTTP запросам, но в отличие от последних, сокеты позволяют работать с двунаправленным потоком данных, что является уникальным и пресущим только сокетам.

HTTP работает примерно так: клиент задаёт вопрос на сервер, есть ли какое-то сообщение. Затем сервер отвечает ему - нет. Далее процедура повторяется ровно до тех пор, пока сообщение от сервера всё же есть, и тогда сообщение переходит из сервера на сторону клиента.

Сокеты работают в корне по-другому: клиент задаёт запрос, в случае возникновения сообщения - отправить его из сервера на свою сторону. Затем НИЧЕГО не происходит ровно до тех пор, пока сервер не получает сообщение. Только тогда это сообщение переходит на сторону клиента, без каких либо повторных запросов и тд.

Веб-сокеты активно используются, если вы работаете над проектом в реальном времени, каким-либо месенджером/чатом или над какой-то онлайн игрой. В реальности, сокеты нынче очень перспективны, и с большой вероятностью будут использоваться повсеместно.