Почему экземпляр SqlConnection в блоке using?

Почему экземпляр класса SqlConnection как правило объявляется в блоке using? ПОчему нельзя просто взять и написать его просто так?

Ты можешь сделать что захочешь.

Можешь написать его и без блока using, но в таком случае нужно постоянно держать в голове, что класс SqlConnection, при его использовании, обязывает прежде всего вызывать метод SqlConnection.Open(), что в свою очередь открывает "поток", через который будет производиться всё движение данных при взаимодействии с ними. После работы, необходимо будет каждый раз закрывать "поток", путём вызова метода SqlConnection.Close(). Это нужно для того, что бы в следующий раз при попытке поключиться к базе данных через этот "поток" вы получали адекватное подключение, а не ошибку про то, что канал уже открыт, и вы не можете открыть его ещё раз.

Использование конструкции using позволяет выкинуть из головы всё это, и не закрывать поток самостоятельно, так как метод Dispose() будет автоматически вызван автоматически после закрытия блока using, в следствии чего "поток" будет закрываться сам по себе, по окончании взаимодействия с ним.