¿Qué significa realmente "abrir una conexión"?

Estaba tratando de explicarle a alguien por quéconexiones de bases de datos implementar IDisposable, cuando me di cuenta de que realmente no sé lo que realmente significa "abrir una conexión".
Entonces mi pregunta es: ¿qué hace prácticamente C # cuando abre una conexión?

Gracias.

Respuestas a la pregunta(3)

Su respuesta a la pregunta