Ponieważ dodałeś notatkę o praktycznych przykładach do swojego pytania, dam ci kilka przykładów usług, które napisałem dla aplikacji korporacyjnych (nie mówisz, że jesteś programistą aplikacji korporacyjnych, ale domyślam się, że większość programistów C # VS2010 jest) . Myślę, że szukasz pomysłu na to, co mogą napisać programiści, którzy nie pracują dla Microsoft.
Usługa monitorowania pulsu, która sprawdza, czy inne programy nadal działają (mogło to również działać jako zaplanowane zadanie, ale zostało zaimplementowane jako usługa).
Usługa pisania raportów, która działała przez kolejki żądań raportów, uruchamiała raporty i wysyłała je do różnych drukarek, w zależności od tego, która drukarka była zajęta. Pomogło to w odciążeniu starszej aplikacji i pozwoliło na udostępnienie uruchomionego raportu przez wiele tanich urządzeń obsługujących tę usługę.
Został zaimplementowany jako usługa, dzięki czemu będzie działał w sposób ciągły, uruchamiał się automatycznie po ponownym uruchomieniu i mógł używać standardowego interfejsu usług systemu Windows do uruchamiania, zatrzymywania, wstrzymywania itp. Ponadto, jeśli było to zaplanowane zadanie, musiałoby inicjować pobieranie danych z innych programów lub trwałego źródła (kolejki, pliku, bazy danych) zamiast być dostępnym dla innych programów do wywołania (gniazdo, potok).
Część serwerowa tej aplikacji klient / serwer została również zaimplementowana jako usługa, aby mogła zostać zrestartowana przy ponownym uruchomieniu, itp. Był inny projekt z rozszerzeniem .exe, który uruchamiał ten sam program nie jako usługa, aby ułatwić debuguj na maszynach programistycznych.
Mam nadzieję że to pomogło. Inne odpowiedzi są jednak lepszymi odpowiedziami ogólnymi, szczególnie pomysł, że zaplanowane zadania są teraz prawdopodobnie łatwiejsze do pisania i administrowania w większości celów.