32

Is there a BitTorrent client written completely (I mean completely) written in C# ? I am aware of the BitTorrent clients written in mono, I absolutely love it.

Are there any other opensource BitTorrent clients other than MonoTorrent & BitSharp written in C# which is under development?

Just wondering how much of an interest an "opensource bit torrent client in C#" would generate amongst C# programmer folks out there.

EDIT: Do check out Michael Stum's Pumpkin torrent on http://pumpkintorrent.codeplex.com/

@Michael: thanks for sharing the project url.

@Allan: thanks for MonoTorrent ;)

abhilash
  • 5,605
  • 3
  • 36
  • 59
  • 1
    I've started writing a BitTorrent _Tracker_ in C# a month ago, with a client to follow. I am not aware of any good C# implementations of either, but i'll add a link in a month or two once it's finished. – Michael Stum Mar 08 '09 at 14:15
  • Is it hosted as an opensource project ? Pls do post the link if it is one. For people like me who are willing to contribute. – abhilash Mar 08 '09 at 14:18
  • If you're "not impressed" with the other options, why don't you start building a client yourself and get other developers to contribute? You're part of the C# open-source community as well, and you're welcome to help create the software instead of just insisting that everybody else work on that. – SqlRyan Mar 08 '09 at 14:42
  • It's currently on http://pumpkintorrent.codeplex.com/ and as said, I am still working on the Tracker side and understanding the protocol. BEncoding is done, but BDecode is still missing. – Michael Stum Mar 08 '09 at 15:23
  • Firstly I absolutely love monotorrent & bit sharp. I edited the question to change my tone.Honest apologies . It's only I feel it's got a long way to go to be on par with other open source BitTorrent Clients out there. & Yes i am part of the community looking forward to write one myself. – abhilash Mar 08 '09 at 15:24
  • 1
    The http://pumpkintorrent.codeplex.com/ link is no longer valid, and I cannot find it using Google. Does it still exist? –  Apr 23 '15 at 22:19
  • 1
    Just to add to this thread, MonoTorrent doesn't work for me and is really poorly documented. – mellis481 Jun 04 '15 at 17:18

5 Answers5

34

Unfortunately i don't have 50 reputation to add comments, so I have to write another answer. My question was directed at this comment:

"but honeslty I feel it's still got a long way to go to be on par with other opensource bit torrent clients."

What features do you feel are missing that makes it inferior to other libraries/clients? An incomplete list of features includes:

  1. 100% platform independent
  2. IPV6 support
  3. Super-seeding
  4. A full bittorrent tracker
  5. DHT
  6. Peer exchange (utorrent style)
  7. Encryption
  8. Memory cache
  9. Prioritised downloading
  10. Selective downloading (technically this is just a subset of Prioritised downloading)
  11. Fast Peer extensions
  12. Local peer discovery,
  13. Ban lists (whitelisting/blacklisting of IPs at the same time)
  14. Magnet link downloads
  15. Endgame mode
  16. Libtorrent extension protocol
  17. rate limiting (per torrent/global)
  18. Http seeding (webseeding) - getright style
  19. Individual file relocation
  20. What else do you want ;)

So, is it just a case of you not realising the full potential of monotorrent or are there features missing that you consider critical? If so, patches are always welcome.

""written on mono" is never a bad thing. It just I was looking for something on MS .Net"

I think you misunderstand. MonoTorrent/bitsharp does build and run on MS.NET ;) All you have to do is check the code out from SVN, open MonoTorrent.sln and hit F5.

Hope that helps.

ocodo
  • 29,401
  • 18
  • 105
  • 117
Alan
  • 409
  • 3
  • 3
  • 1
    @Allan +1 for the feature listing and extensive explanation. I really appreciate it. I think you have misunderstood my question, (but I think it's time I edit the question to change the tone) & Yes, I am aware of Mono Projects running on MS.NET. But thanks again Alan.!! – abhilash Apr 05 '09 at 02:12
  • 1
    It looked like you were asking for a feature rich bittorrent library and monotorrent didn't suit your needs ;) So if that's not what you were asking, what *are* you asking? Anyway, the only other thing I can add is that monotorrent is the only opensource .NET bittorrent library out there :) – Alan Apr 05 '09 at 12:11
  • @Alan, is MonoTorrent still alive? Files section was updated in 2009. Thanks! – expert Feb 16 '12 at 21:07
  • @ruslan, did you read the lastest News on monotorrent.com? **The source is now available at [github](https://github.com/mono/monotorrent/)**. YES its still alive. – vulcan raven Sep 30 '12 at 12:57
  • On github no changes in 4+ years, and issues are piling up that make it look like it might not work in modern bit torrent world. – Jayson Minard Oct 27 '16 at 11:38
22

MonoTorrent is wonderful client and server library. There is a GUI written on GTK# - Monsoon for now it runs only at Linux. If you have a time to spend you could write a WPF GUI or with little modification to port Monsoon to Windows.

Look for Alan McGovern for more information.

13

MonoTorrent

or

BitSharp

John Ellinwood
  • 14,291
  • 7
  • 38
  • 48
3

Also check out Hadouken - fully written in C#, but runs as a Windows service. It could probably be made to run on Mono.

Javid
  • 2,755
  • 2
  • 33
  • 60
Ben H
  • 3,136
  • 3
  • 25
  • 34
2

What makes you think it's basic? ;) It sports more advanced features than a lot of other open (and closed) source torrent libraries. I think you've very much underestimated what monotorrent offers.

  • I absolutely dig monotorrent. I mean I absolutely love it, I do admit drawing comparisons is not fair.But by "advanced" what did you mean?. & again *I am not underestimating monotorrent.*. It's an awesome bit torrent client. – abhilash Apr 03 '09 at 09:00
  • @Alan - And yes, Honest Apologies – abhilash Apr 03 '09 at 09:11