First, some examples of the power of demos, to give you an incentive to learn!
Also please remember that recorded demos are remarkably small. I usually get an average of 1mb per minute of footage at maximum graphics quality, full screen size, with no sound sacrifice or fps drop at all.
Basics
To record a demo (a movie using Source as the recorder and player both) you simply type into your console:
record 'filename'
Then, when you are done, type:
stop
and to view the demo you recorded, type:
playdemo 'filename'
Demo Player

During a demo, at any time, press
shift+F2 to open this window. It is also advisable to type
cl_drawhud 0 and
r_drawviewmodel 0 into console to remove your HUD, since you
are the camera.
Load... - Select a new demo to play. To the right of this is the current demo.
Stop - Exits the current demo.
Time: ##:## / ##:## - Displays current time / total time.
Slider Bar - Select playback speed. From 0% to 600%.
Playback Controls - None of them work except:
.....
Resume / Pause - Pause or resume demo play.
.....
> - Advance one tick/frame.
Tick: x / x - Ticks are the source engine's way of saying a frame. A more precise method of measuring time.
Goto: - Enter a value and you will move to the desired tick. Again, this is for precise time management.
Drive.. - Toggle free camera mode. To navigate, hold left mouse button and use WASD. Slow down with shift key, and use Z and X to move vertically in relation to the camera.
This mode is great for taking screenshots, or manually navigating a scene you took part in from a new third person view.
Smoother

This is a great tool for creating new camera angles. Note that it is the most complex of all the tools, as well as the most crash-prone, but also the most rewarding. Basically, it lets you define the camera path.
Here is a 4 minute crash course: