Всем привет! Интересует следующая проблема (обычно все находится поиском, но в этот раз уже полдня читаю, не могу въехать... наверно, не там читаю, или не догоняю

:
У меня есть веб-сервис (ASP.Net 2.0), клиентами являются Windows-приложения (Delphi 7.0). Клиенты периодически передают данные через веб-сервис на сервер (например, хранилище заказов). При совпадении критериев, заказ должен перенаправиться определенному клиенту. Вопрос: как клиенту узнать, что на сервере появился заказ с критериями, подходящими для данного клиента.
Что первое приходит в голову, это ежесекундно опрашивать с клиентов сервер на наличие заказов (с совпавшим критерием). Но мне кажется, это не очень красиво. В идеале было бы, с сервера вызвать через callback функцию клиента о получении заказа. Но как это сделать, что-то не доганяю. Если объясните на уровне WinApi, то было бы супер.
Я в веб-приложениях новичок, поэтому если спрашиваю что-то простое, то просто подскажите в какую сторону копать.