Прежде всего , вам следует использовать CMS с открытым исходным кодом и улучшить код в соответствии с вашими потребностями, не пытайтесь изобретать велосипед!
Второй , нет необходимости тратить деньги, множество решений ...
вы можете использовать, например, Uploadify для передачи пользовательских файлов на ваш сервер, затем с помощью любого FTP-примера загрузить файлы на FTP и удалить их с сервера в случае успеха.
если вы не хотите иметь «посредников», просто загрузите прямо на FTP
string name = Path.GetFileName(UploadControl.FileName);
byte[] data = UploadControl.FileBytes;
using (WebClient client = new WebClient()) {
client.UploadData("ftp://my.ftp.server.com/myfolder/" + name, data);
}