I have not personally done this. I have read how to do it.
With the USB port you can pay to have an external HD hooked up to the USB port. Its like a one time $30 or $50 charge to enable this feature (I don't remember the exact cost).
When you hook up the Hard Drive it will tell you that it needs to be formatted. So you will loose any data currently on the HD. I think it currently supports a max of something like 500gig. So it formats the HD in a linux file format. Then you can transfer anything from the DVR to the HD or set it to record right to the external HD.
To transfer the files from the HD to your PC you just need to be able to read that standard Linux file format. If you have a PC with Linux your already all set. Apparently for windows there is some additional software that you need that will allow windows to read the linux partition.
Last problem is the saved DVR files are in a proprietary Dish video format. There are programs out on the web that will convert the file type to a standard video format. I have not used any so I cannot recommend them or verify if they work.