Ciao a tutti!

sto sviluppando un progetto in c#. purtroppo sono alle prima armi con la programmazione c#.
Quello che vorrei/dovrei realizzare è un servizio che legge dati provenienti da periferico. questi dati dovranno poi essere passati ad una applicazione che li elabora e li presenta a video . Più in dettaglio la mia idea era questa:

fare un servizio che faccia da interfaccia tra h/w e software applicativo che elabora i dati in arrivo dal servizio. Quindi mi troverei ad avere un architettura client server in cui il client è l'applicazione che elabora i dati e il server è il servizio. ogni tot tempo il client interroga il servizio legge i dati, li elabora, e tira su una finestra di pop up (stile quella di avast).
Questo programma non deve funzionare in rete ma in locale.

quello che non so è:
1) quale sistema mi conviene utilizzare per far comunicare il servizio con l'applicazione?
ad esempio wcf potrebbe andare bene o meglio usare altri sistemi offerti dal framework .net quali?
2)una volta installato il programma all'accensione del pc dovrebbero partire sia il servizio(e su questo non ci dovrebbero essere problemi perchè viene fatto in automatico) ma anche l'applicazione che leggi i dati dal servizio. Come faccio a far partire questa applicazione?
posso metterla in "esecuzione automatica" e sono a posto oppure devo dire al servizio che appena parte deve far partire l'applicazione?

grazie a tutti quelli che risponderanno!!