Есть разные способы сделать это в зависимости от того, какая функциональность вам нужна. Если все, что вам нужно сделать, это ответить на события щелчка, и вам не нужна «полная» поддержка протокола http, вы можете просто открыть сокет и проанализировать, что поступает из браузера.
В качестве альтернативы вы можете использовать HttpListener, который позаботится о разборе протокола http и относительно прост в использовании. Для того, что я думаю, вам нужно, это, вероятно, предпочтительный подход. Простой, некомпилируемый пример здесь: https://gist.github.com/1770645.
«Святой Грааль» - это хостинг ASP.NET в вашем приложении windows form. Я сделал это, и это довольно сложно. Среда выполнения должна быть размещена в отдельном домене приложений, поэтому вы в конечном итоге перепрыгиваете через множество обручей, чтобы все работало и подключалось. Это также включает в себя написание реализации HttpWorkerRequest, которая более полнофункциональна, чем фреймворк, предоставляющий SimpleWorkerRequest. Кстати, это также работает для служб Windows, что дает вам отличный способ обеспечить управление службами и мониторинг через браузер без зависимости от IIS.