Я бы рекомендовал использовать обработчики в первую очередь по той причине, которую вы предлагаете.Есть дополнительные издержки с веб-сервисами, которые были разработаны для более тяжелых операций SOAP, в отличие от HttpHandler.
Кроме того, большая часть этой информации SOAP часто не требуется для вызовов AJAX.Допустим, я просто хочу вернуть JSON на страницу.Создание веб-службы .NET, которая делает это, на мой взгляд, нарушает концепцию веб-службы .NET.Обработчик действительно может быть чем угодно, но веб-сервис обычно подразумевает контракт SOAP или WCF.Не просто вывод некоторого JSON и окончание ответа.(Может быть, я где-то пропустил функцию веб-службы JSON, это вполне возможно. Это именно тот подход, который я выбрал.) Итак, опять же, по крайней мере, для меня, это также вопрос разделения интересов в дизайне.