Помимо изучения кода, SQL Server Profiler - это лучший способ отслеживать, что происходит в вашей базе данных при использовании ваших приложений. Документацию можно найти здесь:
Нет никакого различия. В Вашем первом примере компилятор автоматически выведет делегата, которого требуется инстанцировать. Во втором примере Вы явно определяете делегата.
вывод Делегата был добавлен в C# 2.0. Таким образом для проектов C# 1.0, вторым примером была Ваша единственная опция. Для 2,0 проектов первый пример с помощью вывода - то, что я предпочел бы использовать и видеть в кодовой базе - так как это более кратко.
[object].[event] += anEvent;
просто синтаксический сахар для -
[object].[event] += new EventHandler(anEvent);
Я не думаю, что существует различие. Компилятор преобразовывает первое во второе.