I'm not sure I'm understanding this discovery thing correctly. Are they saying you don't need a server to discover the address of another computer? I've written collaborative programs before, but I either had to tell them my IP address (because it's dynamic) or had to have a server to put IP's on so that my program1 on Computer1 could connect to my program2 on Computer2. It sounds to me like the server is not needed with .NET P2P

If that's true I can't get it in my head how this could even be possible. Wouldn't the program have to (ask) every computer on the internet "Are you it?" trying to find Program2. I have searched endlessly and find hints that this is the way it is, through some kind of magical Discovery Service, but can't find confirmation that it is.

Does anybody know if this is possible, even if you don't know how.