.NET Framework では、デリゲート(C言語で云うところの関数ポインタのようなもの)を使って任意のメソッドを非同期に呼び出すことが可能です。これは「非同期デリゲート」と呼ばれ、内部的にはスレッドプールが使用されています。 ファイルコピーなどの時間のかかる処理を簡単に非同期で処理することができます。 また、.NET Framework 3.5 以降からは、ラムダ式などの導入から汎用的なデリゲートがあらかじめ用意されているため、ほとんどの場合、新たにデリゲートを宣言する必要はなくなりました。 さらに、匿名メソッドやラムダ式を使用することで、非同期処理のメソッド自体も別に宣言する必要がなくなりました。 これらを使用すると、簡単に非同期処理を記述することができるようになりましたが、非同期に呼び出した処理の中で例外が発生した場合、それらを捕捉するにはコールバック用のメソッドを用意してEnd