usingステートメントはIDisposableインターフェイスによるリソースの破棄を補助する構文で、オブジェクトのスコープ(有効範囲)を明示するとともに、例外発生の有無に関わらずスコープから抜ける際に自動的にIDisposable.Disposeメソッドを呼び出すようにするものです。

usingステートメントを使った確実なリソースの破棄
using System;
using System.IO;

class Sample {
  static void Main()
  {
    // FileStreamでファイルを開く (FileStreamが、指定されたファイルのファイルハンドルを取得する)
    using (var stream = new FileStream("file.dat", FileMode.Open, FileAccess.Read, FileShare.Read)) {
      stream.ReadByte();

      throw new Exception(); // streamを操作中に例外が発生した場合を想定
    } // 仮に例外が発生した場合でも、streamがスコープから抜ける時点で、Disposeメソッドが自動的に呼び出される
  }
}

より詳しくは§.usingステートメントで解説します。