[Update] The entire source for this post can be found here . Just cut and paste into a WinForm. I was recently tasked with writing a change password dialog box for a windows forms application we are shipping soon. This sounds simple enough (I've only written dozens for ASP.NET), however I have a minimal background in Win32 programming...been doing ASP.NET for quite some time now, so I knew it would be an interesting adventure moving from the stateless world of http to the stateful world of WinForms...