This explains how to do it from C#:
Backing up an SQL Database in C#[
^] and may help.
But under normal circumstances you should never use Restore: once your backup system is in place and tested, you would only need it if there has been a problem and the "live" database is corrupted or missing - because a database restore operation is designed to put a database back to it's last known good state: the point at which you backed it up. To do this, it throws away the existing data and replaces it with the data as it was when the backup was taken. For this reason, you should take regular (and frequent) backups: Daily is good, but weekly may be possible - it depends how much data you can afford to lose or have to reenter.
By preference, operate a Grandfather / Father / Son backup scheme as a minimum: if the son is faulty, you can use the Father, and so on. And store backups away from the primary they were copied from, preferably off site!
The one time you should hope you ever have to do a restore is to test your backups, and make sure they are still working: and that is worth doing deliberately a couple of times a year, just to be sure! (Preferably immediately after a extra special set of really good backups have just been done!)