Combining and organizing all the current answers into one answer, then adding my own research:
Brief summary of Microsoft gadget development:
What are they written in? Windows Vista/Seven gadgets are developed in a mix of XML, HTML, CSS, and some IE scripting language. It is also possible to use C# with the latest release of Script#.
How are they packaged/deployed? The actual gadgets are stored in *.gadget files, which are simply the text source files listed above compressed into a single zip file.
Useful references for gadget development:
where do I start? Good introductory references to Windows Vista/Seven gadget development:
If you are willing to use offline resources, this book appears to be an excellent resource:
What do I need to know? Some other useful references; not necessarily instructional
Update: Well, this has proven to be a popular answer~ Sharing my own recent experience with Windows 7 gadget development:
Perhaps the easiest way to get started with Windows 7 gadget development is to modify a gadget that has already been developed. I recently did this myself because I wanted a larger clock gadget. Unable to find any, I tinkered with a copy of the standard Windows clock gadget until it was twice as large. I recommend starting with the clock gadget because it is fairly small and well-written. Here is the process I used:
- Locate the gadget you wish to modify. They are located in several different places. Search for folders named *.gadget. Example:
C:\Program Files\Windows Sidebar\Gadgets\Clock.Gadget\
- Make a copy of this folder (installed gadgets are not wrapped in zip files.)
- Rename some key parts:
- The folder name
- The name inside the gadget.xml file. It looks like:
<name>Clock</name>
This is the name that will be displayed in the "Gadgets Gallery" window.
- Zip up the entire *.gadget directory.
- Change the file extension from "zip" to "gadget" (Probably just need to remove the ".zip" extension.)
- Install your new copy of the gadget by double clicking the new *.gadget file. You can now add your gadget like any other gadget (right click desktop->Gadgets)
- Locate where this gadget is installed (probably to
%LOCALAPPDATA%\Microsoft\Windows Sidebar\
)
- Modify the files in this directory. The gadget is very similar to a web page: HTML, CSS, JS, and image files. The gadget.xml file specifies which file is opened as the "index" page for the gadget.
- After you save the changes, view the results by installing a new instance of the gadget. You can also debug the JavaScript (The rest of that article is pretty informative, too).