FOLLOW-UP: Why aren't WinForms much quicker to develop and maintain than WebForms?

Dear Experts,

First, please let me know if I am violating netiquette by asking so many questions.  We are in a rare intensive research stage this week.  I'll try to pester you all a lot less after that...

I have confirmed from EE that WinForms are (typically) build exclusively from C# (or VBScript), whereas WinForms typically require a range of technologies, such as C#, ASP.NET, HTML, Ajax, etc.  Yet responses to one of my (endless) questions indicated there wasn't much difference in development and maintenance time between the two.

Why not?

If seems to me that if everything you do is in a single language--especially in an OO language--that should make everything a lot easier and quicker.  Especially when you go to hire other people to support your UI, it seems a lot easier to find someone with C# experience, instead of C#, ASP.NET, HTML, Ajax and...

What am I missing here?  (I'm a UI dummy!)

Who is Participating?
I wear a lot of hats...

"The solutions and answers provided on Experts Exchange have been extremely helpful to me over the last few years. I wear a lot of hats - Developer, Database Administrator, Help Desk, etc., so I know a lot of things but not a lot about one thing. Experts Exchange gives me answers from people who do know a lot about one thing, in a easy to use platform." -Todd S.

"I have confirmed from EE that WinForms are (typically) build exclusively from C# (or VBScript), whereas WinForms typically require a range of technologies, such as C#, ASP.NET, HTML, Ajax, etc"  where did you get that from?

WinForms (Windows applications) can be built, and are built, with ANY of the .NET languages (VB.NET, C#, J#...) as are WebForms (Web pages = ASPX pages, they are the same thing).  And VB Script does not come into the mix at all.

I have built a very functional web site, for the US Army at Ft Detrick, MD, using  VB.NET as the programming language for the pages (twith no VBScript, and no C#), so I know whereof I speak.

It really depends on what you want your application to do.  WebForms use HTML, but there is almost no 'programming' doen in HTML.  And if you want your application to be highly interactive, the  AJAX might be an approach to take, but a typical Web-based application does not REQUIRE AJAX, so AJAX is a 'nice to have' skill, but not a REQUIRED skill.  And AJAX can be picked up fairly quickly, in any case.

If you are going to build a Web-based application, then ASP.NET is the technology to use, but it is not a 'programming' language, in the same sense that C# or VB.NET are programming languages.  ASP.NET is the 'structure' around which the Web-based application is built, so to speak.

BrianMc1958Author Commented:
Sorry.  I meant VB.NET rather than VBScript.  And I didn't mean to say that WinForms cannot be built with other .NET languages.  I was just trying to contrast the simplicity of building WinForms with a single OO language (using C# as our choice) with the seeming complexity of building WebForms, which typically require a wider mix of technologies to achieve close to the same effect from the user's point of view.

Cloud Class® Course: Python 3 Fundamentals

This course will teach participants about installing and configuring Python, syntax, importing, statements, types, strings, booleans, files, lists, tuples, comprehensions, functions, and classes.

WebForms do not 'typically' involve a wider mix of technologies - that would only be the case if the specifics of your requirements involve those other technologies, and that same argument can be made for a WinForms application as well.  It all hinges on the specifics of the Requirements and the expectations of the users.  

If the users are ALL (every one) located at the same place (in the same building, for instance) and have absolutely no need to ever use the application from any location other than their office, the a Networked Windows application might be the correct solution to the requirements.  On the other hand, if the users are distributed geographically, or have a need to be able to connect to the application from a number of loactions, then a Web-based solution would seem to be called for.  So the user's expectations and requirements are what determine how you approach the solution, just as it should be.  

You, as the developer, should NOT be driving the development solution in a particular direction just becuase you (as the developer) percieve that one technology might be easier to implement.  That type of 'arrogance' will turn off the end-users of the application faster than anything else you might choose to do. (You are essentially telling your users, 'Trust me, I know what is best for you')


Experts Exchange Solution brought to you by

Your issues matter to us.

Facing a tech roadblock? Get the help and guidance you need from experienced professionals who care. Ask your question anytime, anywhere, with no hassle.

Start your 7-day free trial
Winforms (Thick Client / windows apps)
Webforms(Thin Client / browser based web apps)


WebForms : No install needed (in most cases)...lives in the Browser *****This is a big plus for many people
WinForms  : Has to be installed on each client....allthough "Click-Once" allows for easy installation via the web.

User Interaction:

WebForms : Poor due to postbacks (unless AJAX is used), often different between browsers
WinForms  : In most cases faster, easier to work with, and will pretty much look the same on all computers.

Development: ****I do very little ASP.NET development, so this is a little one-sided.
WebForms : Slower in my opinion , since you often try to mimic winform behavior using javascript tricks....
WinForms  : Easier to develop and more straight forward.

WebForms : Done on your server, everyone is working with the same version
WinForms  : Many ways to implement updating, but unless you do implement a auto-update, people may be using different versions.

WinForms win the development and UI battle.
But Web apps excel as far as updates and installation.

I will always go with a win app over a web one unless there is a benefit to serving it on the web.

BrianMc1958Author Commented:
Thanks again, folks.  
It's more than this solution.Get answers and train to solve all your tech problems - anytime, anywhere.Try it for free Edge Out The Competitionfor your dream job with proven skills and certifications.Get started today Stand Outas the employee with proven skills.Start learning today for free Move Your Career Forwardwith certification training in the latest technologies.Start your trial today

From novice to tech pro — start learning today.

Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.