I'm guessing paint.net has layer function similar to photoshop.
Paint.net is freeware.
I suppose 'snapping' of tile details + character images could be done by importing an image from paint.net to inkscape - the only problem is 1. I wouldn't know how to do that necessarily and 2. The image has to be 'flattened' first, which means all the layers are merged and what you get is lost information on the fog of war overlapping your hard work.
You can solve 2. by probably saving the file with the entire map in paint.net separately. You can then create another file with the same image and overlap it with the fog of war layer - then save this one, preferably with an extension that makes it of format applicable to inkscape (you'll need to ask someone else about this, I don't know about it myself).
You can design tiles with inkscape and then save each of them separately while making the pixel dimensions equal to the size of each square on the grid. You can also design character images (make them smaller than tiles so that players still have an idea of what kind of tile they're standing on, or larger in the case of D&D with 'size category > medium size'. Nonetheless, characters should be made in a way that still shows tiles - so a 10ft. x 10ft. ogre in D&D, ie., wouldn't take up exactly 100ft.^2 of tiles; after all, an ogre isn't square shaped. Typically, the ogre would cover the center and then leave room for each of the four tiles to be seen partially.
Placing characters on tiles can be done in paint.net in the same file as the fog of war; characters/monsters would be a separate layer.
Come to think of it, the entire map could be saved in inkscape actually and then you can just create a paint.net file with fog of war - flatten that and save that as jpeg so that everyone can view it and then upload it.
I plan on actually using fog of war for my 4x strategy game I'm introducing here, so knowledge on how to do this would be important for me too.
I played with Maptool for a while as well, but found it had a bit more of a learning curve. I did like the built-in fog of war and lighting and so forth. It would make a big difference if there was a good tileset somewhere (the defaults were kinda disappointing), just some basic walls and floor elements that I can slap together a building with. I ran a search or two and couldn't find much.
(This is all great feedback btw, guys - thanks much!)
Tiles can be drawn simply with inkscape or ms paint (mspaint has less learning curve than inkscape; I found inkscape to be filled with awkward tools). Just draw something that conveys like, a river, ie.; for characters, just use colored dots with a legend. Also cartesian (x,y axis system) co-ordinates are very important for player viewing. If you want to create a map-guide for the GM, include circles with numbers that detail regions of interest. Each number is given an extensive legend and contains details about the points of interest. The players, of course, can't know about this - the GM needs to though, so that he can describe it to them.
Draw them large and then shrink them down - it will only make the image smaller and shouldn't get rid of details unless the image is already drawn in less than at least hundreds of pixels in detail. Enlargening a shrunken image will lower resolution because smaller images ultimately have less pixels and the process of enlargening just 'stretches' pixels (actually duplicates them to convey a stretching). I think an svg file (???) allows for enlargening without lowered resolution, but those are recent tech and (I think) not all browsers support them since they take up a lot more memory per file. Svg is actually the extension for inkscape though, so I don't know (the new tech is called 'vector graphics').
For actual appearance of a setting, hire a guy from the cartographer's guild (google it; and if you're doing that, you may as well, y'know, get permission from wizards and sell the campaign in a book for other GMs). Otherwise, you'll have to rely on descriptions since mspaint tiles obviously don't convey much.
If you have a 'travel map'; you can use another square grid but then offer a legend with a scale to possibly indicate where characters are in the wilderness or city (for city; it's good for if characters are in multiple locations - use a legend to indicate various districts of a city and then in GM notes write out a list of all NPCs that typically reside in that location via a personal GM legend) or during some other kind of random encounter. Of course, you're not going to draw out an entire city in 5ft. square increments, since you can't convey much with mspaint. For 'travel map' you can instead use existing images off google images or open source art that you acquired (with permission). Shrink it down to denote the general environment for wilderness. So, ie., if a square kilometer is snowy and full of hills, you can snap a google image of some snowy clustered mountains to that square, in the case that squares are 1km^2 scale. If the squares are instead 1 square shaped hectare scale, ie., then you can enlargen the snowy image and snap it so that it overlaps 10 squares on the 'travel map' grid.
For a city, you may instead just wish to draw out its general shape with colors to denote generalized parts of a city such as 'buildings', 'walls' and a few little numbers for specific parts of the city that define it such as the port (if it has one); underground tunnel networks wouldn't show up on a city map, but you might indicate the entrance to a network as a point of interest that doesn't show to players; the GM would, again, have his own extended legend pointing to numbers on various squares of a city's travel map. Details can be anything like 'entrance is hidden' etc.
Underground terrain can be indicated as part of 'wilderness' if they happen to be quite large and any significant non-random encounters can be localized. Use circles with numbers and a legend for player reference to figure out what district they are in (or in the case of players splitting up in a city - the reference would be quite useful and reduce the load on taking notes). You can move a player's dot color to that district area. 1 square might represent so-and-so scale but can convey parts of a district, such as a street or square intersection. Basically, in each square, there's a potential boundary in which a combat encounter might take place.
If there's roads on a square, you can snap a google image of a cobblestone road, ie. The details of each square can rely entirely on GM description - I suppose an extended legend wouldn't be enough to describe everything about a city, though, wouldn't it (that is, the going ons of every square; of course, NPCs tend to bustle about in cities so they'd always be in different locations at different time periods too)?