DEV Community

Cover image for I built a unified Windows system monitor in .NET 8 — lessons, mistakes, and open questions
FBNonaMe
FBNonaMe

Posted on

I built a unified Windows system monitor in .NET 8 — lessons, mistakes, and open questions

Hi everyone 👋

I’m 20 years old, and over the last months I’ve been working almost daily on a Windows desktop application called System Monitor Suite Pro.

This post is not a promotion and not a “check out my cool app” story.
I’m sharing my experience, the design decisions I made, and the questions I still don’t have clear answers to.


What I wanted to build (and what I didn’t)

Important upfront:
This is NOT an antivirus and NOT a one-click optimizer.

The idea was to build a transparent, admin-oriented system monitoring and diagnostics tool — something that lets you see and control what’s happening in Windows, without magic buttons or hidden behavior.

I was frustrated by having:

  • one tool for monitoring
  • another for startup entries
  • another for registry
  • another for networking

So I tried to see if a single unified tool could make sense.


Core features

The application currently includes:

  • Real-time monitoring (CPU, RAM, disks, network)
  • Process manager (tree termination, suspend/resume, protection of critical system processes)
  • Startup manager (Registry Run/RunOnce, Startup folders, Task Scheduler, Winlogon)
  • Registry editor + safe registry cleanup (always with backups)
  • Network scanner + WiFi analyzer
  • Packet inspector (admin-only)
  • Windows restrictions / policy unlocker
  • Backup & restore utilities
  • Tray integration, logging, SQLite history

Everything is explicit: if something is modified, you know exactly what and where.


Tech stack & architecture

  • .NET 8
  • WPF + MVVM
  • async/await everywhere (avoiding UI freezes was a hard requirement)
  • WMI + WinAPI where appropriate
  • SQLite for history and logs
  • Inno Setup for a clean installer

A lot of time went into:

  • async architecture
  • avoiding deadlocks
  • handling admin-only APIs safely
  • graceful degradation when permissions or APIs are unavailable

Hard lessons learned

Some things I underestimated at first:

  • How easy it is to freeze a WPF UI with a single wrong async call
  • How many Windows APIs silently fail without clear error signals
  • How sensitive system-level tools are perceived by users (rightfully so)
  • How much effort goes into making destructive actions safe

I also learned that not building an antivirus or optimizer actually makes trust harder, because people still expect those labels.


Open questions (this is why I’m posting)

I’d really like honest opinions from people with more experience:

  • Does a single unified Windows admin tool make sense, or is separation better?
  • Which parts of such a tool feel inherently risky or unnecessary?
  • Would you personally trust a tool like this on your own system?
  • What would you absolutely never include in software like this?

I’m not selling anything and I’m not claiming this is “production ready”.
This is very much a learning-driven project.

If someone wants to discuss deeper or test it hands-on, I’m open to direct conversation — but feedback in the comments is more than welcome.

Thanks for reading 🙏

Top comments (2)

Collapse
 
brooks-rockett profile image
Brooks Rockett

No other feedback at the moment except to say that this sounds like a really good idea, I work in IT and I know there are millions of us that are checking event logs, task manager, registry etc. on a daily basis that would really benefit from a “single pane of glass” to quickly troubleshoot issues or track performance over time. Many of us work for companies that happily spend tens of thousands of dollars on monitoring tools every year.

Other than that, I would question the wording of “Pro” in the name as implies there’s a non-Pro version and this one would be a premium offering.

Lastly just keep in mind that software changes all the time and you’ll have to keep up with those differences between versions, especially if you’re integrating a bunch of different sources, so just make sure to build the core to be extremely clean and adaptable so you’re not starting from scratch every time windows updates.

Collapse
 
fbnoname profile image
FBNonaMe

Thank you for such a thoughtful and detailed reply — I really appreciate it.

The “single pane of glass” idea is exactly what motivated me to start this project. I found myself constantly switching between Event Viewer, Task Manager, registry tools, network utilities, and logs, and wanted something that stays transparent but reduces that context switching.

You’re absolutely right about the “Pro” wording. At the moment there is no paid tier or non-Pro version — the name came more from the target audience (admins / power users) than from a pricing model. I’m definitely reconsidering the naming to avoid confusion.

And I fully agree with your point about Windows constantly changing. A big focus for me right now is keeping the core extremely modular and isolated from fragile APIs (WMI, WLAN, raw sockets), so that changes in one area don’t force a full rewrite. Long-term maintainability is something I’m trying to be very intentional about, even if it slows feature development.

Thanks again — feedback like this is exactly why I shared the project.