I've been thinking a lot lately about some best practices in making sure applications look and feel like 'real' Windows XP apps. This is one of those areas that is, in my opinion, undervalued at times, despite the fact that it really can make a huge difference in the overall perception of your work.

  1. Include a manifest file with your application. This is a very straightforward process, which is well documented on MSDN.
  2. Make sure your buttons, radio buttons, group boxes, and check boxes use the 'System' FlatStyle.
  3. Use 24-bit or 32-bit images throughout your application. This can have a suprisingly big effect on how inviting an application appears. For example, take a look at the differences in artwork between Internet Explorer 5 and Internet Explorer 6.
  4. Experiment with adding some task-based UI. Windows XP does this quite effectively, and I think it's something that's worth considering.
  5. Follow standard font guidelines. For managed applications, this should mean MS Sans Serif, 8.25pt, regular. (thanks for catching my mistake, Pavel)
  6. When in doubt, refer to the Windows User Experience Guidelines.