The way I would do it is to have the C# desktop application act as a server and listen to socket connections. The PHP application could then connect on requests, send the required data then close the connection.
The only way to connect to another computer is to use some kind of address. These services probably have a central database of current user IPs. In your case, your C# application would know the "username" of the computer it's on and every time it is started it could go update a field in a database with the current external IP. The PHP script could then fetch that to connect.