Когда у вас есть только один клиент, и только вам нужно получить к нему доступ через локальную сеть и Интернет, тогда разработка приложения ASP.NET будет меньше накладных расходов. Это потому, что вам не нужно настраивать дополнительный сервис, который вам нужно настроить и защитить. С другой стороны, создание хорошего пользовательского интерфейса для приложения ASP.NET может быть намного сложнее, чем просто WinForm приложения WPF (в зависимости от ваших пользовательских интерфейсов).
Но .... Что делать, если вы планируете новые клиенты в будущем? Может быть (родное) мобильное приложение или другое (Windows/Web) клиент для другой группы пользователей с разными потребностями? Затем веб-сервис дает вам некоторые преимущества ...
Например, вы хотите создать новое приложение Windows Phone (в зависимости от вашего веб-приложения) для некоторых операций CRUD.
Когда вы пишете всю логику базы данных и бизнес-правила в своем веб-приложении, вы не можете использовать ее прямо в своем Windows Phone. Возможно, вы можете использовать сборку, если она совместима с этим профилем .NET framework. Но что делать, если вы хотите создать приложение для Android без использования Xamarin или чего-то подобного. Чем вы не можете использовать сборку из своего веб-приложения, и вам нужно снова переписать свою логику ... Когда у вас был веб-сервис (например, веб-служба REST), вы можете вызвать службу для всей базы данных и (общей) бизнес-логики , И вам не нужно заботиться о том, правильно ли он работает. Как вы, вероятно, видите, что ремонтопригодность также может быть преимуществом веб-службы, потому что вся логика централизована в сервисе.
Рабочий стол VS Веб-дискуссия бесконечна. Но суть в том, что пользовательские интерфейсы рабочего стола проще кодировать и поддерживать, тогда как веб-браузер - это «браузерный ад», где каждый браузер отображает пользовательский интерфейс по-другому. Если у вас есть хорошие навыки в HTML5 + Javascript (+ jQuery), возможно, вы сможете получить достойный пользовательский интерфейс в Интернете, что несколько напоминает плохое настольное приложение. Затем, если вы идете по пути XAML, пользовательский интерфейс не имеет ограничений, но вы ограничены только Windows. Нет iPhone, нет Mac, нет android, ничего из этого. –
FYI, это «asp.net», а не «asp». –