Чем отличается visibility:hidden и display:none?

В C# встречал такие свойства у объектов как visibility и display. На практике пробовал применять и одно и другое, в случае с hidden и none - результат идентичный. Есть ли какая-то разница между этими свойствами?

visibility есть в C#, display пришёл к нам из CSS. Кроме видимости, в CSS есть еще "отображаемость" - display. От visibility он отличается тем, что невидимый (visibility="hidden") слой продолжает занимать место, а неотображаемый (display="none") места не занимает, словно его просто нету.