Earlier this month v1.0 of the Windows API Code Pack was released. The API allows you to do things that are not currently available today. You can check out the site for a complete list of available features, but the one I am looking at right now is icon overlays.
Essentially, with icon overlays, you can change how your icon looks in the taskbar based on certain conditions in your application. For example, a virus scanner could overlay something over the icon to let you know when a scheduled scan is happening. A backup application could change the icon based the last time a backup was run. The use is really up to you, but for now I just wanted to play - nothing fancy just a checkbox that will overlay a green orb when checked, and remove it when unchecked.
Just to be clear we are not swapping two icons in and out. The first icon is the blue application icon, and the second is a green orb. The API will actually overlay the second one on the first (in the bottom right corner). It also provides some nice fading animation as well.
using Microsoft.WindowsAPICodePack.Taskbar;
if (OverlayCheckbox.Checked)
{
Icon greenOrb = Properties.Resources.GreenButton;
TaskbarManager.Instance.SetOverlayIcon(greenOrb, "Some Status");
}
else
{
TaskbarManager.Instance.SetOverlayIcon(null, "");
}

short link to this post:
.net, windows 7
programming, api