Раз проекты на C#, вероятно используется Windows? Самое логичное, по-моему, просто настроить бэкапы системными средствами на внешний HDD. Будет возможность восстановить систему целиком из образа, как в Time Machine.
Код и документы можно дополнительно хранить, например, на
BitBucket с его неограниченным количеством private-репозиториев.