What is the latest recommended method for having multiple client desktop application pass information to a server application located across the internet?

I am using c# and Vis studio 2008, and not sure if SOAP is appropriate or maybe SOAP has been superseded by WCF.
Or maybe there are other methods that are more suitable.

Dani AI

Generated

Short answer: pick the transport that matches your requirements (interop, latency, push, reliability) rather than a single “one-size-fits-all” stack. and were correct that older .NET options exist, but today the common, well-supported approaches are HTTP/REST, high-performance RPC, real-time persistent connections, or queued messaging — chosen by scenario.

If you need broad compatibility and simple request/response (CRUD, form submissions, easy debugging), a RESTful API over HTTPS is the safest path; it plays well with firewalls, browser tools, and mobile/desktop clients (ASP.NET Core Web API). For low-latency, strongly-typed RPC and streaming between C# clients and a .NET server, consider gRPC (gRPC for C#). For server-to-client push or interactive apps use a persistent channel (for example, SignalR for .NET) so the server can push updates without clients polling (SignalR). For decoupling, durability, and offline-tolerant workflows, introduce a message broker (RabbitMQ, cloud queuing) and design for idempotent message handling (RabbitMQ).

Operational cautions: clients behind NAT/firewalls should initiate outbound TLS connections; avoid requiring inbound sockets on clients. Protect every channel with TLS, authenticate/authorize requests (token-based/OAuth/JWT), add retries with exponential backoff, and make operations idempotent. Measure latency and throughput early; if JSON payloads become a bottleneck move to binary formats (for example, protobuf with gRPC).

Practical step path: start with a small HTTPS API, add telemetry and version your endpoints, then add a real-time layer or migrate hot paths to gRPC only where needed. If staying on legacy .NET Framework for now, plan the migration path for future cross-platform support.

Recommended Answers

All 2 Replies

I would look at WCF more closely it is based on SOAP and may be what you are looking for by the sounds of it.

See:
Microsoft What is WCF

WCF is the "latest and greatest" but tou can also take a look at remoting. I am in the middle of a project with similar requirements and WCF scared me back in to remoting. I know microsoft is promoting WCF but I just haven't been able to find enough resources and support with the designer for all of the decorating WCF requires.

Be a part of the DaniWeb community

We're a friendly, industry-focused community of developers, IT pros, digital marketers, and technology enthusiasts meeting, networking, learning, and sharing knowledge.