ASP.Net or WPF (C#)? [closed] ASP.Net or WPF (C#)? [closed] wpf wpf

ASP.Net or WPF (C#)? [closed]


Reasons to choose WPF:

  • Much faster and easier development than ASP.NET and jQuery
  • Much easier to implement quick incremental background loading of data
  • Much easier to implement client-side caching of commonly used data (important for remote offices)
  • More efficient data transfer from server (can use advanced WCF features unavailable to web browser)
  • Keyboard navigation better, since you can easily define shortcuts, etc, and not be limited by browser
  • Maintenance overhead much better using MVVM pattern
  • Softphone integration easy

Reasons to choose ASP.NET and jQuery:

  • None that I can see

In your scenario I would definitely choose WPF.


First of all, I would sit down and write the business requirements and specifications. It really doesn't matter what tech you use - proper planning will affect your project timeline more than technology choice. This is especially true for an in-house custom built app.

As far as development, I would take the requirements and lay out the backend functionality. I would actually implement the backend in WCF, regardless of the client technology - that way you could use best of both worlds if needed (for example for phone integration you could write a stand-alone WPF app). ASP.NET with jQuery can easily use WCF services (JSON or XML version) together with desktop client.

As far as development of the client forms, this highly depends on developers experience and your future plans. I am not going to go into advantages/disadvantages of developing web software here - there are a ton of articles in the last 10 years about cloud/web based software (for example salesforce). I would rather concentrate on deliverables - what is your team most comfortable with today and in the future. There's a huge difference between WPF and web development, from development standpoint, and it requires completely different experience.


Why not consider a hybrid solution - Silverlight

With Silverlight you get most of the goodness and statefullness of WPF (with almost exactly the same XAML and code), plus you get the deployment characteristics of ASP.NET

Many people consider Silverlight the next step after ASP.NET/AJAX, and it would definitely deliver all of the benefits of WPF relevant to your scenario.