There is a config I think that contains shortcuts for demo fast forward and so on (something along the lines of "demoseeking.cfg" or so). But you can also use the "slowmo" command in console for accelerating or slowing down demo playback. If I know I want to go to minute 18 of a demo, I just set slowmo to a high value (like 20, for example), and the demo plays back with 20 times normal speed. Just when it gets near the time that I want to look at I set it back to 1 or lower. For slowing playback time down you can go below 1, so "slowmo 0.5" will play back the demo at half speed.
To entirely pause playback in order to be able to move camera freely, use "pausedemo". To start playback again, just issue the command a second time.
To get a free camera (in case you didn't know), you can do "camera_enable 1", "camera_free 1" - and you'll be moving around the demo as if you were a spectator. Note however that this will not enable you to see players that are beyond your player's field of view, as items' and players' positions don't get sent to your client by the server if the server determines you can't see them anyway. So don't wonder about items/players not being displayed when flying through a map with the free camera in a demo.