Your business runs on a .NET application older than anyone you can hire to maintain it.
We are a legacy .NET modernisation specialist for mid-sized businesses running on .NET.
Every .NET version since 1.1 in 2003. Still shipping on .NET 10. We take WebForms, VB.NET, WinForms and .NET Framework applications forward without stopping the business that depends on them.
✓ Fixed scope · ✓ Fixed price · ✓ Fee credited if you go ahead
What we migrate from, what we migrate to, and what we verify it with
- .NET Framework 1.1–4.8
- VB.NET & WinForms
- Windows Server
- .NET 8 / 10
- C#
- ASP.NET Core
- EF Core
- SQL Server
- Azure
- Blazor
- React
- Playwright
Before we change any code, we build a test harness around the system you already have.
Modernisation goes wrong when nobody can say what the old system actually did. So the first phase of the work is not migration — it is capturing current behaviour as an automated suite that runs against your application exactly as it stands today.
- 1
We map the journeys that matter
Sitting with whoever knows the system best: the paths that raise an invoice, close a period, price a job, post to the ledger, print the label. Not every screen — the ones where being wrong costs money.
- 2
Each journey becomes a Playwright test
Playwright drives the real application in a real browser against a copy of your data, and records what it does at every step. No mocks standing in for the parts we did not want to deal with.
- 3
The suite runs against the current system first
Whatever it produces before we touch anything is the baseline. That recording is what "unchanged" means for the rest of the project, and it is agreed before any migration work starts.
- 4
Every change afterwards is verified against it
The suite runs in CI on every commit and again before anything is proposed as done. A change that moves behaviour fails the build rather than reaching you as a surprise.
What it does and does not prove
What it proves is that behaviour has not changed. It does not prove the old behaviour was right — where a test pins down something that was already wrong, we show you and you decide whether to keep it or fix it. That is your call, not one we make quietly during a migration.
The suite is yours. It stays in your repository, runs on your CI, and goes on being useful long after we are finished — including against whoever works on the system next.
When This Usually Becomes Urgent
Almost nobody modernises because the architecture is dated. They modernise when one of these six turns up. If you recognise yours, you already know roughly how long you have.
SQL Server 2014 or SQL Server 2016 end of support
The database under the application has left mainstream support and the renewal quote for Extended Security Updates has arrived. Paying for a further year buys time and nothing else, and the figure tends to be the moment somebody asks what the alternative costs.
Windows Server 2012 or 2012 R2 end of life
The box the application has run on for a decade is now itself the risk. Moving the workload usually surfaces everything that was quietly depending on that specific machine — a scheduled task, a COM component, a file share path nobody documented.
You cannot hire .NET Framework, WebForms, VB.NET or WinForms developers
The role has been open for months. The candidates who can do it do not want to, and the ones who want to cannot. This is the trigger that arrives without a deadline attached, which is why it gets deferred until one of the others turns up alongside it.
An auditor or insurer has flagged an unsupported framework
Cyber insurance renewal, a SOC 2 or ISO 27001 audit, or a customer's own security questionnaire has put an unsupported runtime in writing. Once it is on a finding it needs a dated remediation plan, which is a different conversation from a preference.
The .NET developer or vendor who knew the system has left
One person held the whole picture and they have retired, resigned, or ended the contract. Nothing is broken yet. What has gone is the ability to change anything safely, and that usually becomes visible at the first urgent request after they leave.
A private-equity acquisition or a new CTO has ordered a review
Diligence has asked what the technology estate is worth and what it would take to bring it current, or a new CTO is thirty days in and needs a defensible answer. Both need an assessment somebody outside the business will accept.
The dates, from Microsoft rather than from us
- SQL Server 2016
SQL Server 2016 left extended support on 15 July 2026. It is now on paid Extended Security Updates, the first year of which runs to 13 July 2027.
Microsoft SQL Server 2016 lifecycle - Windows Server 2012 R2
Windows Server 2012 R2 left extended support on 10 October 2023. Its third and final year of Extended Security Updates ends on 14 October 2026.
Microsoft Windows Server 2012 R2 lifecycle - Windows Server 2016
Windows Server 2016 reaches end of extended support on 12 January 2027.
Microsoft Windows Server 2016 lifecycle - .NET Framework 4.5.2, 4.6, 4.6.1
.NET Framework 4.5.2, 4.6 and 4.6.1 retired on 26 April 2022. Support for 4, 4.5 and 4.5.1 ended earlier, on 12 January 2016.
Microsoft .NET Framework lifecycle FAQ
Two legacy .NET estates we maintained and extended while the business kept trading on them.
Neither could be paused. A WPF back office that independent retailers were selling through, and a .NET Framework 4.5 platform that physical supply chains run on — both changed in place, with the system live throughout.
- Logistics / IoT.NET 4.5 / Azure / Angular
Loscam
AustraliaWe delivered · Anil ledReal-time track-and-trace built as a separate Azure Functions and Angular 6 application alongside a .NET Framework 4.5 platform, for a pallet pooling provider operating across Australia, New Zealand and 12 Asian markets. We built the backend services behind tracking, custody reconciliation, billing and cross-border logistics.
Case study - Retail / EPOS.NET / WPF / SQL
Just Retail
United KingdomLed by Anil ChannaA UK EPOS and retail management platform for independent retailers, built as a WPF desktop back office on .NET. Anil maintained and extended it with stock-take, supplier promotions and shelf-edge labelling.
Case study
We still build new systems, which is why the modernised ones are worth keeping.
A firm that only ever repairs loses touch with what current practice looks like. These are recent .NET 10 builds, and they are the standard a modernised system gets brought up to.
- CRM / Billing.NET 10 / React 19
CRM & Billing
A full commercial-lifecycle platform for a UK B2B services company: quote, contract, engineer site visit, invoice, payment, credit note, bank reconciliation and reporting, plus a self-service portal for their own customers.
Case study - Hospitality / Workforce.NET 10 / React Native
Venue Operations
A multi-venue platform for a bar and pub group: rostering, clock-in, timesheets and labour cost for managers, with a React Native app for staff to check their schedule, request time off and swap shifts.
Case study - SaaS Platform.NET / React / PWA
Elev8 Performance
A multi-sided training and studio management platform for a Vietnam-based performance coaching business, built on .NET and React with three payment providers and an installable web app.
Case study
We Don't Publish a Retention Percentage
You would be right to discount one — and we would rather not publish a figure we could not evidence if you asked. Here are two engagements instead, and you are welcome to ask for a reference on either.
A UN counter-terrorism programme, supported across successive rounds of member-state onboarding.
A UK retail and hospitality client supported across multiple systems over several years.
Clients keep us because we're the ones who know why the system works the way it does.
References, Not Testimonials
We do not publish client quotations. Most of our work sits under NDA, and a testimonial you cannot verify is worth very little to you anyway. What we will do instead is arrange a direct conversation with someone who has worked with us, so you can ask the awkward questions without us in the room.
Ask for a referenceAI Into The .NET System You Already Run
Most AI pilots do not stall on the model. They stall on the integration — there is no API to call, the authentication predates OAuth, and the data the model needs is spread across a schema nobody documented. That is a legacy problem, and it is the one we were already going to solve.
Second, not first
AI Readiness is the follow-on, not the front door. If your systems are already supportable and current, it is the right next engagement. If they are not, the modernisation assessment comes first — an AI integration plan for a system you cannot safely deploy to is a plan you cannot act on.
A Fixed-Price Modernisation Assessment
You have accepted something needs doing and now need a number you can take to a budget holder — one that will survive contact with the code.
The fee is credited in full against the modernisation project if you proceed within 90 days.
- A system and dependency map: what the application is actually composed of, and which versions you are pinned to.
- A named risk register rather than general warnings, including anything already out of support.
- A per-module position on incremental migration versus rebuild, because the answer is rarely the same across a whole estate.
- A phased plan with effort sized per phase and the assumptions shown, so your engineers can challenge them.
- A costed first phase — or a written explanation of why the system should be left alone, which is a legitimate and reasonably common outcome.
Technical Diagnostic — free
45 minutes, plus a short written summary. A straight answer on whether modernising is worth doing yet — and “leave it alone for now” is a real answer.
- 45 minutes, with Anil, no obligation
- Written summary afterwards, yours to keep
- Diagnoses; deliberately does not plan
Why the project itself has no price on this page
Anyone quoting you a range before reading your code is guessing, and the guess runs in their favour until the invoice arrives. The assessment produces the number; once it is agreed it is fixed.
For clients in the US and Canada we stay available until 23:00 IST, which covers the Eastern morning through to early afternoon. US Pacific overlaps only at the very start of your day, so those calls are best booked in advance.
- Who you contract with
- Softwiz Infotech, registered in India. One principal — Anil Channa — accountable for every engagement.
- When you can reach us
- UK 09:00 – 12:30 GMT (to 13:30 BST) · US & Canada Eastern 09:00 – 12:30 EST (10:00 – 13:30 EDT) · UAE 09:00 – 16:30 GST · Singapore 11:30 – 18:00 SGT
- Paperwork
- You sign our MSA, with a SOW for each engagement. An NDA can be signed before the technical diagnostic if you want one in place first.
- Invoicing
- Prices are quoted in USD and invoiced in your local currency, paid by local bank transfer. Payment terms are set out in the MSA.
- Governing law
- The agreement is governed by the laws of India.
Stay ahead of the curve.
Practical guides, migration strategies, and lessons learned from 20+ years of .NET development.

AI in Regulated Systems: The Audit Trail Comes First
Every financial services firm we speak to in 2026 has an AI initiative somewhere on the roadmap. Most of them are technically feasible. A meaningful number are quietly undeployable, not because the model performs badly, but because nobody worked out how the firm would explain a single decision to a regulator eighteen months after it […]
Read more ›
Clean Architecture in .NET: Where It Earns Its Complexity
Clean architecture has become close to a default recommendation for new .NET projects, and for good reason: separating domain logic from infrastructure concerns makes a codebase easier to test and easier to change later. It also adds real ceremony: more projects, more interfaces, more indirection between a request coming in and a database row being […]
Read more ›
WebForms to Blazor: A Realistic Migration Path, Not a Rewrite
WebForms applications have a reputation problem. They are old, the tooling around them has quietly stopped improving, and every conference talk assumes you have already left. None of that changes the fact that a lot of WebForms applications are still running real logistics and operations businesses today, reliably, and a full rewrite is rarely the […]
Read more ›Find Out What Moving Your .NET System Forward Would Actually Take
Two weeks, a fixed price, and a written answer your budget holder can act on — including the answer that says leave it alone for now. Not ready for that? Start with the free 45-minute diagnostic instead.