To make a WARCRAFT icon, here is what you want.
Since you want free and legal, I recommend downloading GIMP. It is like an advanced paint program. Of course, it is free.
After you get that, You will want to download the Warcraft 3 Viewer from the tools section of this site. Basically you will need that to convert your icon's format (Hopefully a "*TGA") into the warcraft's icon format "*BLP".
I also recommend downloading some kind of warcraft MPQ browser. Like Mago's Model Editor or the Image Extractor (Both should be on this site)
Note: you will not need this to make icons, it is just helpful.
For starters, i would take an existing icon, Use the WC3 Viewer to convert it to a "*TGA" and open it with gimp. Erase the entire icon excluding the border. Add the border to a different layer that can be turned off and on. Create your image, and apply the border.
The icon with the border should be named/saved as: BTN(name of your icon).Tga
Turn off the border, and use the darken tool with a strength of about 4-13 and darken the entire icon and around the border.
This will be named/saved as: DISBTN(Name of your icon).Tga
Unless the icon is for an ability, those are the only icons you will need. In the case that the icon is an aura or passive ability, you will leave the icon normal and without a border, and darken the outside.
This will be named/saved as: PASBTN(Name of your icon).Tga
Note: After finishing all the icons, you will want to convert them all back to the "*BLP" format. Do this using the WC3 Viewer. Use a lower compression level (43) for lower file sizes.
I hope this helps you. For the actual iconing, refer to those tutorials. They will help you a lot.