Basically, Gil, Instead of your DC controller varying the voltage on ALL the track that it is connected to, and hence ALL your locos will start/speed up/slow down/stop according to the varying voltage on the track, DCC has a constant voltage on the track. i.e. full power.
Each loco has a little circuit board inside it. (called a decoder). You "program" these decoders with what you want the loco to do. i.e. turn the headlight on when going forward only. Put the rear headlight on at all times. etc, and also give each of your locos a number.
When you use your controller, you would, say, select loco number 10. Then move the throttle to, say, half way, in a forward direction. Your controller then sends computer-type commads through the tracks that are picked up by that decoder only (Number 10), and the decoder then adjusts the voltage to your loco, to move in a forward direction at half speed.
Because they are "computer-type" commands, you can also plug your computer into your layout, and use computer programs to control your locos. i.e. have your throttles on screens on your computer monitor.
There is more to it than this. Instead of selecting "loco number 10" on your throttle, you can select "turnout number 15", and switch the turnout (Provided you have a "decoder" attached to the turnout.
The price of a decoder can very from about $10 - $15 for the basic ones, to over $100 depending on the functions you want. The expensive ones support sound, so your loco with CHOOF CHOOF CHOOF along the track, according to the speed, and when you press a button on your throttle, the whistle will blow, or the bell will ring etc. This needs a tiny speaker inside your loco of course.
Try this link
http://www.railwaybob.com/Modules/WhatIsDCC/DCCWhatIs01.htm from the top thread of this section of the forum. (DCC links) for some more basic info.