.NET BCL already offers an FTP client-side facility
System.Net.FtpWebRequest
:
FtpWebRequest Class (System.Net)[
^].
You will find enough code samples to get a clear idea on how to use it. If you still cannot understand it, understand another thing: people write the library at this level, because this level makes the most sense for most users who can actually use programming for solving their problems. There is little sense to waste time on other people; they should rather use some available FTP client, possibly with UI. If you want to use it as a developer by cannot understand how, you should rather learn programming practicing on some simpler problems. But I hope you can figure it out.
—SA