C# 8.0以降では、usingステートメントをローカル変数宣言形式にしたものであるusing宣言を使用することができます。 これはスコープがメソッド内全域となるusingステートメントを記述するものと同様で、見かけ上はvarconstなどのローカル宣言のように記述することができます。

ローカル変数宣言形式のusingステートメント(using宣言)でオブジェクトを使用する 
using System;
using System.IO;

class Sample {
  static void Main()
  {
    // "source.txt"を読み込むストリームを作成し、使用し終わったら破棄する
    using var fromStream = File.OpenRead("source.txt");
    // "dest.txt"に書き込むストリームを作成し、使用し終わったら破棄する
    using var toStream = File.OpenWrite("dest.txt");

    // fromStreamの内容をtoStreamにコピーする
    // (ファイルsource.txtの内容をdest.txtにコピーする)
    fromStream.CopyTo(toStream);

    // ローカル変数のスコープから抜ける(メソッドから抜ける)時点で
    // using宣言されたオブジェクトに対してDisposeメソッドが呼び出される
  }
}