I've been tasked with creating a dashboard application to show real time updates for our servers. The raw data comes in from an XML file on our intranet which I need to parse and present to the user.

It is not an option to have every user of the dashboard pull this XML file at the same time for their updates. From what I have been reading, I need to use a WCF service to consume the XML file server side and then have it push updates to all clients who are looking at the service.

I need it to be scalable, there will be around 20 concurrent users at the start but I will need to scale to hundreds in the future. I will need to update from the XML file every 30 seconds to 1 minute.

Am I on the right track with WCF? Are there other options that I should consider?