Choosing between desktop and web (intranet) for an internal application

DotNetDeveloper 21 Reputation points
2022-06-16T14:13:25.75+00:00

We're developing a document management application for internal users. Users are spread out over 25 offices, each office will have 10-15 users. Users will be required to scan documents (20+ at times), generate and print barcode for each page and print a summary report as the cover sheet for each set of documents. Some users will be high volume (50+ times a day), some might use it 1-3 times a day and some might not use it but still need the app available.

Every workstation will be a windows desktop (at least in the foreseeable future). The application we develop today will need to have a minimum lifespan of 15 years.

Currently we're leaning towards building this with WinForms and .Net core as desktop apps generally can better deal with the external peripherals we need. Is WPF a better choice? A quick search shows developer community is split in how Microsoft would support Winforms or WPF in future.

Does anyone have experience dealing with the hardware using a web application? I'd love to use MVC/Angular with .Net core to build this application. I find it easier to push updates for a web app to all users at once. Plus it's easier to hire developers with experience for web apps (We have to build this app quickly with a small team and mostly new hires).

Windows Forms
Windows Forms
A set of .NET Framework managed libraries for developing graphical user interfaces.
1,915 questions
Windows Presentation Foundation
Windows Presentation Foundation
A part of the .NET Framework that provides a unified programming model for building line-of-business desktop applications on Windows.
2,807 questions
ASP.NET Core
ASP.NET Core
A set of technologies in the .NET Framework for building web applications and XML web services.
4,729 questions
ASP.NET
ASP.NET
A set of technologies in the .NET Framework for building web applications and XML web services.
3,561 questions
0 comments No comments
{count} votes

Accepted answer
  1. Bruce (SqlWork.com) 69,121 Reputation points
    2022-06-16T18:44:02.927+00:00

    this is always the intranet dilemma.

    if your scanners support http & CORS (pretty common), then a web application makes sense. you could also supply a simple application that provided this feature that was installed locally.

    if you decide desktop, then probably you want to also look at MAUI and possibly desktop Blazor. Guessing what the preferred windows desktop development environment 5 years out is tough. MAUI seems to have good support as cross platform, but its XMAL roots show. It is limited in layout, and xml is not the most friendly markup language. I would have never guessed, but I think Blazor which uses HTML/CSS may be the desktop winner for corporate applications.

    Myself, unless its mobile, I always prefer web. the web client and camera/printer/scanner features are always improving.

    0 comments No comments

0 additional answers

Sort by: Most helpful

Your answer

Answers can be marked as Accepted Answers by the question author, which helps users to know the answer solved the author's problem.