Having unpacked the tarball somewhere in your home directory, you run 'make' to produce config.h. Edit this as required and run 'make install' to compile dwm and install an executable file in /usr/local/bin. Edit .xinitrc or whatever you use to start X to reflect the change, and restart X. You should now be running dwm with your modifications. Any errors will be reported on-screen. (See below for other changes that may be needed for .xinitrc.)
All the dwm source files, including config.h, are written in C. This is fine if you know C, but even if you don't and are not a programmer (I'm not), it's pretty easy to modify it. If you look through the lines of code it's mostly pretty obvious what they do, and you can make your own modifications using what you find as a model. For example, I added new commands to run my browser (Iceweasel) and my mail reader (Mutt). I also made Mod-Tab and Mod-Shift-Tab work the same way as they do in xmonad.
If anything isn't clear, have a look at the suckless.org site, which provides examples of configuration. You can also join the mailing list and ask questions there.
xmodmap -e "keycode xxx = Super_L"
To find out what is the key code for your chosen key, use xev.
Having got this working, you can put the above xmodmap command in your ~/.xinitrc file so that it is run automatically when you start X. Of course, you will lose the normal function of the key you assign as a Windows key, so choose it wisely. The useless and annoying Caps Lock key is a good choice; on my computer its key code is 66. Put two lines in .xinitrc to achieve this (see below). I add a couple of other things in .xinitrc as well, to make the cursor work properly and to set the language to gb instead of us. Here is my ~/.xinitrc file, with comments.