title: Wake on LAN using C#
body: <p>What's the best way going forward to implement Wake on LAN using C#?</p>
  
  <p>The functionality is needed for machines in a LAN environment (and not over the internet). The method needs to be robust enough to take care of firewalls and other such issues. Also, for systems not supporting this functionality, or having it disabled, is there an alternative?</p>
  
  <p>The primary objective - wake up machines (from shutdown/hibernate state) over the LAN - this is to be programmed using C#.</p>
  
  <p>Please guide.</p>
  
  <p>PS: I've come across the following:</p>
  
  <ol>
  <li><a href="http://blog.memos.cz/index.php/team/2008/06/12/wake-on-lan-in-csharp" rel="noreferrer">http://blog.memos.cz/index.php/team/2008/06/12/wake-on-lan-in-csharp</a></li>
  <li><a href="http://community.bartdesmet.net/blogs/bart/archive/2006/04/02/3858.aspx" rel="noreferrer">http://community.bartdesmet.net/blogs/bart/archive/2006/04/02/3858.aspx</a></li>
  <li><a href="http://www.codeproject.com/KB/IP/cswol.aspx" rel="noreferrer">http://www.codeproject.com/KB/IP/cswol.aspx</a></li>
  </ol>
  
  <p>However, I'm new to this and hence couldn't figure if the solutions were comprehensive enough. If someone could recommend following either of the above articles, that'd help.</p>