WhatsApp Us

.NET modernisation · phased, test-first

.NET Framework to .NET Core migration: a phased plan that keeps your app running

A .NET Framework to .NET Core migration moves an application built on .NET Framework 4.x onto modern .NET (today .NET 10, the long-term support release) so it runs faster, can be hosted on Linux and stays on a supported runtime. BtechWaleTech is three freelance developers in India who map the blockers first (Web Forms, WCF, old NuGet packages, System.Web), then move the app in phases behind tests. Migration projects start at ₹60,000. Planning a wider rebuild instead? Read legacy software modernisation.

  • Migration projects from₹60,000 · US$900
  • Typical duration6–12 weeks per application
  • Target runtime.NET 10 (LTS), unless a dependency forces otherwise
  • QuoteItemised, in about 2 working days
  • ApproachAudit, then phased cutover behind a proxy
  • After go-live2 months of free maintenance
  • Blocker audit first
  • ASP.NET MVC and Web API
  • Web Forms to Razor or Blazor
  • WCF to CoreWCF or gRPC
  • Linux and container hosting
  • Side-by-side cutover
  • You keep the code

Three freelance developers in India · English and Hindi · replies on WhatsApp, 7 days a week

  • 3Freelance developers who read your solution file
  • 2Working days to an itemised migration quote
  • 2Months of free fixes after cutover
  • 0Rupees billed before your written approval

The short answer

How do you migrate from .NET Framework to .NET Core?

Audit first, then migrate in slices. List every project, NuGet package and Windows-only API, convert class libraries to SDK-style projects targeting .NET Standard 2.0 or modern .NET, then put an ASP.NET Core app in front of the old site and move routes across one by one. A .NET Framework to .NET Core migration with BtechWaleTech starts at ₹60,000 and usually runs 6–12 weeks.

If you also need ongoing .NET work after the move, see hiring a .NET developer; for the pipeline that ships the new build, see CI/CD pipeline setup.

Last updated

.NET Framework to .NET Core migration at a glance
What movesWeb apps, APIs, services, class libraries, console jobs
Where it lands.NET 10 LTS on Windows, Linux or containers
Hardest partsWeb Forms pages, WCF services, System.Web code, old packages
Mid-sized appFrom ₹60,000, 6–12 weeks
DowntimePlanned per route, usually none for users
OwnershipRepository, build scripts and servers stay in your name
Support2 months free, then from ₹8,000/mo

What the migration work covers

Pieces of a .NET move we can take off your plate

Few solutions that need a .NET Framework to .NET Core migration are a single project. Most carry a web front end, a service layer, shared libraries and a couple of scheduled jobs, and each part needs a different treatment.

Why choose us

Three ways to deal with an ageing .NET Framework app

Staying put is a real option for some internal tools, and a .NET Framework to .NET Core migration is not always the answer. The table shows what each path costs you in risk and effort, not just money.

Three ways to deal with an ageing .NET Framework app
Aspect Stay on .NET Framework 4.8 Rewrite everything at once Phased migration with BtechWaleTech
Runtime support Tied to the Windows version the server runs New runtime, but only after the rewrite ships Moves to .NET 10 LTS slice by slice
Hosting choice Windows Server and IIS only Any, once finished Linux or Windows from the first migrated route
Risk to users Low today, rising as packages age High: one big switch-over day Low: each route is proven before it goes live
Business rules Untouched Re-typed from memory and old screens Carried across and checked against old output
Time before first benefit None Months, sometimes a year Weeks: the first slice ships early
Hiring developers later Harder every year Easy once done Easier with each phase
Spend pattern Maintenance only Large commitment up front Staged approvals; projects from ₹60,000
Who you talk to Whoever still knows the code Often a project manager The three developers doing the work
Best for Stable internal tools with no new features planned Tiny apps or ones being redesigned anyway Live business apps that cannot pause

A phased move runs the old and new apps together for a while, so for a few weeks you pay for slightly more hosting and some duplicated monitoring.

Pricing

What a .NET Framework to .NET Core migration costs

Custom software work starts at ₹60,000 (US$900 for clients abroad), and a .NET migration is priced from the audit, not from a line count. The cost rises with the number of Web Forms pages, WCF endpoints that outside partners call, packages with no modern build, code that reaches into HttpContext everywhere, and how much automated testing already exists. A solution that is mostly ASP.NET MVC with clean libraries costs far less than one built on Web Forms with Workflow Foundation inside. Each phase is quoted and approved separately, the quote arrives in about two working days, and nothing is billed until you approve it in writing.

Starting prices in INR and USD
ServiceIndia (INR)Worldwide (USD)Typical timelineWhat is included
Static website from ₹10,000 from US$150 1 to 2 weeks Up to 100 pages, Responsive design, Contact form and enquiry setup, Basic SEO tags and sitemap
SEO website (299+ pages) from ₹20,000 from US$300 3 to 5 weeks 299+ SEO pages, Keyword and page planning, Schema, sitemap, and internal linking, Design to deployment included
Ecommerce store from ₹50,000 from US$750 4 to 8 weeks Product and category pages, Payment gateway setup, Order and inventory basics, Performance tuning
Android & iOS app from ₹40,000 from US$600 6 to 10 weeks Android and iOS app (Flutter or React Native), Login, forms and push notifications, Admin panel and API connection, Google Play and App Store publishing
Custom web app or software from ₹60,000 from US$900 6 to 12 weeks Custom features and APIs, User accounts and roles, Admin panel, Deployment and handover
AI automation from ₹40,000 from US$600 2 to 4 weeks Workflow mapping, Tool and CRM integrations, AI agent or automation build, Testing and handover
Monthly SEO from ₹10,000/mo from US$150/mo Ongoing, monthly Technical fixes, On-page and content work, Local SEO and listings, Search Console reporting
Maintenance and support from ₹8,000/mo from US$120/mo Ongoing, monthly Content updates, Bug fixes, Backups and security checks, Speed and uptime checks

All prices are starting points, quoted in INR for India and USD for international clients, not fixed quotes. Final cost depends on the number of pages, features, integrations, content, and timelines. Share your requirement and you get an itemised estimate with nothing hidden. See full pricing.

What is a .NET Framework to .NET Core migration?

A .NET Framework to .NET Core migration is the work of moving code written for the Windows-only .NET Framework 4.x onto modern, cross-platform .NET. The name is a little dated: Microsoft dropped the word “Core” after version 3.1, so the destination today is simply “.NET”, with .NET 10 as the current long-term support release.

In practice the migration touches four layers. The project files change from the old verbose MSBuild format to the short SDK-style format. The web layer changes from System.Web (ASP.NET MVC 5, Web API 2, Web Forms) to ASP.NET Core with its middleware pipeline. Configuration moves from web.config to appsettings.json and environment variables. And hosting moves from IIS-only to a choice of Kestrel behind IIS, Nginx, a container or a managed service.

The C# you wrote mostly survives. Business logic, LINQ queries, domain classes and Entity Framework models usually port with modest edits. What does not survive untouched are the framework features that modern .NET left behind, which the next sections list one by one.

  • Project format: packages.config and old .csproj to PackageReference and SDK-style projects
  • Web: System.Web, HTTP modules and handlers to ASP.NET Core middleware
  • Config: web.config and ConfigurationManager to appsettings.json and the options pattern
  • Hosting: IIS on Windows to Kestrel on Windows, Linux or containers

Why move off .NET Framework 4.8 now if it still works?

Because “still supported” and “still a good place to build” are different things. Microsoft’s support policy page states that .NET Framework 4.5.2 and later is a component of Windows and follows the lifecycle of the Windows version it is installed on; 4.8.1 is the last feature release, and 4.6.2 reaches end of support on 12 January 2027. Nothing new is being added to .NET Framework.

Meanwhile the ecosystem has moved. Popular libraries increasingly ship new versions only for modern .NET, cloud SDKs add features there first, and developers who know Web Forms or WCF configuration are getting harder to hire. Staying put means paying more each year for the same app.

There are practical wins too. Modern .NET runs on Linux, which widens your hosting options and often lowers server bills compared with Windows licences. ASP.NET Core’s request pipeline is lighter than System.Web. And you get dependency injection, structured logging and health checks built in rather than bolted on.

Timing matters for teams who migrated once already: the official support table lists both .NET 8 and .NET 9 ending on 10 November 2026, while .NET 10, released on 11 November 2025, is supported to 14 November 2028. If you are starting a .NET Framework to .NET Core migration today, target .NET 10 directly.

Which .NET Framework features block a migration to .NET Core?

The blockers are a short, well-known list, and Microsoft documents them on its “.NET Framework technologies unavailable on .NET 6+” page. Finding which ones your solution uses is the first job of any audit, because they decide whether a project ports in days or needs a redesign.

ASP.NET Web Forms has no ASP.NET Core equivalent, so ASPX pages, ViewState and server controls must be rebuilt. WCF server hosting is not part of modern .NET, although Microsoft points to the community CoreWCF packages as a route to keep SOAP services alive. Windows Workflow Foundation is not supported either; the documented alternative is the open-source CoreWF project.

Lower down the stack, creating extra AppDomains throws an exception, .NET Remoting is gone (Microsoft suggests pipes, sockets, HTTP or StreamJsonRpc instead), Code Access Security and security transparency are not treated as security boundaries, and System.EnterpriseServices (COM+) is unsupported. Even delegate BeginInvoke and EndInvoke calls throw on modern .NET because they relied on remoting.

Usually a quick fix

ConfigurationManager calls, HttpContext.Current in helpers, old JSON serialisers, BinaryFormatter use in caches, delegate BeginInvoke calls.

Usually a redesign

Web Forms pages with heavy ViewState, WCF duplex services, Workflow Foundation, AppDomain-based plugin loaders, Remoting between processes.

If your solution also has a Windows desktop front end, that part can move to modern .NET while staying on Windows; see desktop application development for that side.

Is the .NET Upgrade Assistant enough for a .NET Core migration?

No tool finishes the job, and the tool most blog posts still recommend has changed status. Microsoft Learn now describes the .NET Upgrade Assistant as officially deprecated and no longer actively developed, recommending the GitHub Copilot app modernization agent instead, and keeping Upgrade Assistant only for environments without Copilot access.

Both tools do useful, mechanical work: converting project files to SDK style, bumping target frameworks, swapping known packages, flagging APIs that will not compile. That saves real hours on a large solution. What they cannot do is decide how to replace a Web Forms grid with custom paging, redesign a WCF duplex callback, or check that an invoice total calculated by the new code matches the old one to the paisa.

We use tooling for the bulk edits and then read every diff. The judgement calls, such as whether a library should target .NET Standard 2.0 or multi-target net48 and net10.0, or whether a SOAP service must stay SOAP because a bank integration calls it, are made by a person who has looked at the callers.

  • Tools are good at: project conversion, target framework changes, package swaps, compile error lists
  • Tools are weak at: UI rewrites, service redesign, behaviour checks, deployment design
  • Always needed: characterisation tests that pin down what the old code does today

A phased .NET Framework to .NET Core migration plan

For any app that has to stay online, the safest route is the one Microsoft itself describes as an implementation of the Strangler Fig pattern: stand up a new ASP.NET Core app, have it proxy unmatched requests to the old ASP.NET app using YARP (Yet Another Reverse Proxy), and move routes across in slices. Users see one site the whole time.

Microsoft’s incremental guide also sets the order for shared code: libraries are upgraded in postorder depth-first sequence, leaves first, main web project last, and only the libraries needed for the routes you are moving right now. The System.Web adapters package, Microsoft.AspNetCore.SystemWebAdapters, lets library code that touches HttpContext compile against both worlds while the move is under way.

  • Phase 0, audit: inventory, blocker tags, test gaps, hosting target, written plan
  • Phase 1, groundwork: SDK-style projects, PackageReference, dead code removed, warnings fixed, characterisation tests written
  • Phase 2, proxy: ASP.NET Core front app with YARP forwarding everything to the old site; shared authentication and session configured
  • Phase 3, slices: move a group of routes, compare output, release, repeat
  • Phase 4, services: WCF, background jobs and scheduled tasks moved or replaced
  • Phase 5, retire: proxy fallback removed, old app switched off, Windows server released if no longer needed

Each phase ends with something running in production. If budget pauses the work after phase 3, you still have a working hybrid, not a half-finished rewrite sitting in a branch.

How do you migrate Web Forms to .NET Core?

You rebuild the pages rather than port them, because ASP.NET Core has no ViewState, no page lifecycle events and no server controls. The good news is that the code behind a Web Forms page usually contains the real value, the business rules, and that part can be lifted into services that the new pages call.

There are two sensible targets. Razor Pages suit form-heavy admin screens and public pages: one page, one model, predictable HTML that search engines and screen readers handle well. Blazor suits screens that behave like desktop software, with grids, live filters and component reuse, and it will feel more familiar to a team used to event-driven Web Forms code.

Order matters. We start with low-traffic, low-risk screens to prove the layout, authentication and data access, then move the pages people use every day. GridView-style screens get server-side paging and sorting from the start, since the new version should not load ten thousand rows into memory the way some old grids did.

Choose Razor Pages when

Screens are mostly forms, reports and CRUD, you want plain HTML output, and public pages need to rank in search.

Choose Blazor when

Screens are interactive dashboards used by logged-in staff, you want reusable components, and the team prefers C# over JavaScript.

What happens to WCF services in a .NET Core migration?

It depends on who calls them. WCF client code (calling someone else’s SOAP service) works on modern .NET through the System.ServiceModel client packages. WCF server code, the services you host, is the hard part, and there are three honest options.

Keep SOAP with CoreWCF when outside partners, banks, government portals or hardware vendors call your endpoints and you cannot make them change. CoreWCF is a community port that Microsoft links from its own documentation; it covers the common bindings, though not every exotic configuration, so the audit checks your bindings one by one.

Move to REST with ASP.NET Core minimal APIs or controllers when you own both ends and the callers are your own web or mobile apps. This is usually the cleanest outcome, and the same API can later serve an Android and iOS app. Choose gRPC when two of your own backend services talk to each other at high volume and need strongly typed contracts.

  • Partner-facing SOAP endpoint: CoreWCF, same WSDL, callers unchanged
  • Internal service consumed by your web front end: REST API
  • Service-to-service traffic inside your network: gRPC
  • Duplex callbacks or MSMQ bindings: redesign, often with a queue or SignalR

Checking NuGet packages before a .NET Framework to .NET Core migration

Every package in the solution gets one of four labels: already supports modern .NET, has a newer version that does, has a modern replacement, or is abandoned. The fourth group drives cost more than anything else, because abandoned packages either get replaced or their behaviour gets rewritten in your own code.

Common patterns we see in older solutions: Enterprise Library blocks for logging and data access, old versions of report viewers, PDF libraries pinned to a decade-old release, Unity or Ninject containers, and hand-copied DLLs in a lib folder with no package at all. Commercial component suites often have modern versions, but under a new licence, so check your subscription before assuming the upgrade is free.

Microsoft’s own guidance notes that the Windows Compatibility Pack can bridge some Windows-specific APIs such as the registry or event log when the app will stay on Windows. That is a useful stopgap, but anything using it will not run on Linux, so we flag each use in the audit.

Green

Package has a current release targeting .NET Standard 2.0 or modern .NET. Update and move on.

Amber

A replacement exists with a different API, for example a new logging library. Budget adapter work.

Red

Abandoned, closed-source or Windows-only. Replace or rewrite, and price it separately.

Entity Framework, authentication and session during the move

Data access is usually the least dramatic part. Entity Framework 6 can run on modern .NET, which means you can move the web layer first and upgrade to EF Core later, rather than changing the web framework and the ORM in the same release. When EF Core does come, we compare generated SQL on the heavy queries, because lazy loading and query translation differ.

Authentication needs a plan before the first route moves. During an incremental migration users must stay signed in whether a request lands on the old app or the new one. Microsoft’s System.Web adapters include a remote authentication feature where the ASP.NET Core app defers sign-in to the original app, and a remote session feature for apps that store data in Session.

Once everything has moved, sign-in shifts fully to ASP.NET Core Identity, cookie authentication or your identity provider through OpenID Connect. Old ASP.NET Membership password hashes need a compatibility step so existing users can still log in; we verify on the first successful login and store a modern hash from then on.

Moving a migrated .NET app to Linux or containers

Linux hosting is one of the main reasons people start a .NET Framework to .NET Core migration, and it only works if Windows-only code is gone. Before switching the server, we search for registry access, file paths with backslashes, case-sensitive file names, Windows authentication, printer or COM calls, and time-zone IDs that differ between Windows and Linux.

The usual setup is Kestrel behind Nginx on a Linux virtual machine, or the app in a container on a managed platform. Azure App Service for Linux, AWS or Google Cloud all run modern .NET; the choice depends on where your database and other services already live. For teams that want more orchestration, a container setup can grow into Kubernetes later, which our Kubernetes consulting page covers.

Some apps should stay on Windows for now, for example one that talks to a Windows-only driver or relies on Windows authentication inside an office network. That is fine: modern .NET still runs on Windows Server and IIS, and you keep the runtime benefits while deciding about Linux later.

  • Replace registry reads with configuration or environment variables
  • Normalise file paths with Path.Combine and check file-name casing
  • Swap Windows time-zone IDs or use TimeZoneInfo conversions that work on both
  • Move Windows authentication to OpenID Connect if the app leaves the domain

How long does a .NET Framework to .NET Core migration take and what drives cost?

A mid-sized business application usually takes 6–12 weeks with our team, and custom software work starts at ₹60,000. A single clean Web API can move in a couple of weeks; a solution with sixty Web Forms pages, three WCF services and a Windows service can run past three months if done in one stretch, which is why we split it into phases you approve one at a time.

The cost drivers are easier to predict than people expect once the audit is done. Count the Web Forms pages and group them by complexity. Count WCF endpoints and note which ones outside callers use. Mark red-label packages. Measure test coverage, which is often zero, and budget the characterisation tests that make every later step safe. Add the hosting change if you want Linux or containers.

What we avoid is quoting a large migration from a single phone call. You get an itemised estimate in about two working days after we see the solution, and the first phase is small enough that you can judge the working style before committing to the rest.

Risks and red flags in a .NET Framework to .NET Core migration

The biggest risk in any .NET Framework to .NET Core migration is behaviour drift: the new code compiles, passes a quick click-through and still calculates something differently. Rounding in GST totals, date handling around midnight, culture-specific number formatting and string comparison rules are the usual culprits. Characterisation tests that feed the old and new code the same inputs are the defence.

Watch for these red flags when you compare proposals. A promise of “zero code changes” is not realistic for a web app. A plan that starts with rewriting the UI before anyone has read the WCF bindings is upside down. A fixed end date given before the audit, or no mention of how users stay signed in during the switch, suggests the hard parts have not been thought about.

There are also red flags on your side. If nobody can tell us how the production server is configured, or the only copy of the source is on one developer’s laptop, we start by recovering and versioning the code. That is not glamorous work, but a migration cannot begin without it.

  • No audit before a quote
  • Big-bang cutover on a weekend with no rollback plan
  • No mention of authentication or session sharing
  • Business rules re-typed from screenshots instead of moved from code
  • Target runtime chosen without checking support dates

Code ownership, handover and working with us remotely

Your repository, your cloud account, your domain: a .NET Framework to .NET Core migration should never leave you dependent on the people who did it. We work in a Git repository you own or that we transfer to you, deploy to servers billed to you, and hand over admin access at the end. Nothing lives on our personal accounts once the project closes.

Day to day you deal with the three of us directly. One of us handles the full-stack migration work, from controllers to Razor or Blazor screens. Another of us looks after cloud hosting, Linux servers, data and monitoring. The third of us runs the phase plan, tracks decisions and keeps the audit document current. Updates come on WhatsApp seven days a week, in English or Hindi, with calls when a decision needs discussing.

Handover includes a short architecture note, the list of what changed and why, how to build and deploy, where logs go, and what still carries risk. We do not visit your office, we do not supply twenty developers for a large programme, and we do not give licensing advice on commercial components; we tell you what we see and you decide.

.NET Framework to .NET Core migration across India

Plenty of Indian businesses run on .NET Framework without thinking about it: a distributor’s order portal in Ahmedabad, an HR system at a manufacturer near Pune, a hospital billing screen in Kochi, a school fee module in Indore. Many were built between 2008 and 2018 by an IT vendor who has since moved on.

We work remotely with clients in Bengaluru, Hyderabad, Chennai, Noida, Coimbatore and smaller cities alike. The process is the same everywhere: you share repository access, we audit, you approve a phase. Invoices come with GST details for businesses that need them, payment is by UPI or bank transfer, and international clients pay in USD by Wise, wire or PayPal.

Indian apps often have specific quirks worth checking early: GST calculation code spread across stored procedures, Tally or ERP export jobs, SMS gateway calls written for an old API, and reports that print on pre-printed stationery. Each of these gets a line in the audit, because a migration that breaks the monthly GST report will be noticed quickly.

Pre-migration checklist for a .NET Core move

Work through this list before anyone writes new code for your .NET Framework to .NET Core migration. Most items take minutes; together they decide whether the project runs smoothly or keeps hitting surprises. If you cannot answer some of them, that is normal, and finding the answers is part of our audit.

  • Is all source code in version control, and does it build on a clean machine?
  • Which .NET Framework version does each project target today?
  • How many Web Forms pages, MVC controllers and Web API controllers are there?
  • Which WCF services exist, and who calls each one from outside?
  • Which NuGet packages or loose DLLs have no modern version?
  • Is there any Workflow Foundation, Remoting, COM+ or AppDomain code?
  • How do users sign in, and where is session data stored?
  • What automated tests exist, and do they pass?
  • Which scheduled tasks or Windows services run beside the web app?
  • Where should the migrated app run: Windows, Linux, containers, which cloud?

Bring whatever answers you have to a first WhatsApp conversation. The unanswered ones become the first week of work, and they are also where most migration surprises hide.

Worked example: a hypothetical distributor portal on .NET Framework 4.7.2

Say a pharmaceutical distributor in Hyderabad runs a dealer portal built in 2014: ASP.NET MVC 5 for the dealer screens, twelve Web Forms admin pages, one WCF service that the warehouse scanner software calls, Entity Framework 6 over SQL Server, and a Windows service that emails invoices every night. It runs on a single Windows server that is due for replacement.

The audit would likely tag the MVC screens as green, the Web Forms admin pages as a Razor Pages rebuild, the WCF service as CoreWCF (the scanner vendor will not change its client), and the Windows service as a hosted background service inside the new app. We would propose starting from ₹60,000, split into four phases, each quoted separately.

Weeks one and two: groundwork, SDK-style projects, tests that capture invoice totals and scheme discounts for a sample of real orders, and the ASP.NET Core front app with YARP. Weeks three to six: dealer screens moved in three batches, each compared against old output. Weeks seven to nine: admin pages rebuilt, CoreWCF endpoint stood up and tested against the scanner software on staging. Weeks ten and eleven: nightly invoice job moved, old server retired, app running on Linux. This is an illustration of how we would plan it, not a past project.

Blockers

.NET Framework feature to modern .NET replacement map

Based on Microsoft’s list of technologies unavailable in modern .NET. Effort is a rough guide; the audit sets the real figure.

.NET Framework feature to modern .NET replacement map
.NET Framework featureModern .NET routeTypical effortNotes
ASP.NET MVC 5 / Web API 2 ASP.NET Core controllersLow to mediumRouting, filters and model binding need edits
ASP.NET Web Forms Razor Pages or BlazorHighPages rebuilt; code-behind logic moved into services
WCF server (SOAP) CoreWCF, REST or gRPCMedium to highKeep SOAP only where outside callers need it
Windows Workflow Foundation CoreWF or plain codeHighOften simpler to rewrite the workflow as code
.NET Remoting / AppDomains HTTP, pipes, separate processes, AssemblyLoadContextMediumPlugin loaders need the most care
web.config and ConfigurationManager appsettings.json and optionsLowSecrets move to environment or a vault
Windows services Worker service or hosted serviceLow to mediumRuns on Linux too, as a systemd unit or container

Costs

Starting prices for .NET migration and related work

Starting prices only; your quote is itemised after the audit. See all starting prices.

Starting prices for .NET migration and related work
WorkStarts at (India)Starts at (abroad)Typical timeline
Phased .NET Framework to .NET Core migration of a business app From ₹60,000From US$9006–12 weeks
New Android and iOS app on the migrated API From ₹40,000From US$6006–10 weeks
AI or WhatsApp automation on the migrated data From ₹40,000From US$6002–4 weeks
Public marketing site rebuilt next to the app From ₹10,000From US$1501–2 weeks
Online ordering store replacing an old ASP.NET shop From ₹50,000From US$7504–8 weeks
Maintenance after the 2 free months From ₹8,000/moFrom US$120/moMonthly

Timeline

Phase-by-phase timeline for a mid-sized .NET solution

Durations are typical for a solution with a web front end, a few libraries and one service. Your phases may be shorter or longer.

Phase-by-phase timeline for a mid-sized .NET solution
PhaseWhat happensTypical lengthYou approve
Audit Inventory, blocker tags, test gaps, hosting target3–5 working daysThe written plan and phase quotes
Groundwork SDK-style projects, package updates, characterisation tests1–2 weeksTest results on staging
Proxy setup ASP.NET Core front app, YARP fallback, shared sign-inAbout 1 weekStaging URL behaving like live
Route slices Groups of screens moved and compared2–5 weeksEach slice before release
Services and jobs WCF, background jobs, scheduled tasks1–3 weeksPartner and job tests
Retire and hand over Fallback removed, old server off, documentsAbout 1 weekHandover checklist

Across India

.NET migration for businesses in these cities

We work remotely everywhere. These city pages describe the kinds of software local businesses there usually ask us about.

  • .NET app migration in Bengaluru

    Product startups and IT-services teams here often inherit ASP.NET MVC back offices from their early years and want them on Linux containers alongside newer services.

  • Legacy ASP.NET upgrades in Hyderabad

    Pharma distributors, logistics firms and hospital groups run dealer portals and billing tools built on older .NET that now need supported runtimes and cheaper hosting.

  • .NET modernisation in Pune

    Automotive suppliers and engineering manufacturers use Windows-era production and HR systems; moving the web parts to modern .NET is usually the first practical step.

  • Web Forms replacement in Chennai

    Manufacturers, exporters and healthcare providers around Chennai still rely on Web Forms admin screens that staff use daily and that deserve a careful, screen-by-screen rebuild.

  • .NET Core migration in Noida

    Software outsourcing teams and education businesses in Noida often maintain client portals on .NET Framework and want them hosted on Linux without a full rewrite.

  • ASP.NET to ASP.NET Core in Gurgaon

    Corporate offices, fintech and travel firms in Gurgaon run internal approval and booking tools that need modern authentication and single sign-on after migration.

  • .NET upgrade work in Mumbai

    Financial services, shipping and media businesses in Mumbai carry older ASP.NET systems with partner integrations, where keeping SOAP endpoints stable during the move matters most.

  • Legacy .NET systems in Kolkata

    Tea, jute and trading businesses in Kolkata use long-running order and accounting portals whose GST and report logic must be preserved exactly when the framework changes.

  • .NET migration in Ahmedabad

    Textile, chemical and pharma companies around Ahmedabad often have dealer and distributor portals that need faster pages and mobile-friendly screens after moving off Web Forms.

  • Hospital software upgrades in Kochi

    Hospitals, seafood exporters and port-linked logistics firms in Kochi run billing and tracking tools on ageing Windows servers that are due for replacement.

  • .NET apps for Coimbatore manufacturers

    Pump, motor and textile manufacturers in Coimbatore rely on in-house order tracking and dispatch screens, often built years ago by a single local developer.

  • Government-vendor .NET apps in Thiruvananthapuram

    IT park firms and suppliers working with public bodies maintain long-lived ASP.NET applications where documentation and a clear audit trail of changes are expected.

  • .NET modernisation in Bhubaneswar

    Mining-linked suppliers, colleges and growing IT firms in Bhubaneswar often need older portals moved to supported runtimes before adding new features or apps.

  • School and retail software in Indore

    Education groups, FMCG distributors and retailers in Indore use fee, stock and billing modules on .NET Framework that must keep running through exam and festival seasons.

  • .NET migration in Chandigarh

    Healthcare, education and export businesses across the Chandigarh tricity want their older web apps on Linux hosting to cut server costs and simplify upkeep.

  • Port and steel software in Visakhapatnam

    Port operators, steel suppliers and pharma units in Visakhapatnam run tracking and compliance tools where migration must not interrupt shift-based operations.

How it works

How a .NET migration with us runs, step by step

  1. Share access and context

    You send repository access or a zipped solution, the production server details you have, and a list of screens people use most. A short call fills the gaps.

  2. Audit and phase plan

    We inventory projects, packages and blockers, tag each item, and write a phased plan with an itemised quote per phase, usually within about two working days.

  3. Groundwork on staging

    Project files are modernised, packages updated and characterisation tests written against today’s behaviour, all on a staging copy that never touches your live data.

  4. Proxy and first slice

    An ASP.NET Core front app goes live in front of the old site with shared sign-in. The first small group of routes moves across and is compared with the old output.

  5. Slices, services and jobs

    Screens, WCF endpoints and background jobs move in the order agreed, each one tested and released separately, with you approving every release.

  6. Retire, document, support

    When the .NET Framework to .NET Core migration is complete, the old app is switched off, the new one runs on your chosen hosting, you receive the handover notes, and two months of free maintenance begin.

Questions

.NET Framework to .NET Core migration: common questions

What is the difference between .NET Framework and .NET Core?

.NET Framework is the original Windows-only runtime, now at its final 4.8.1 release and maintained as part of Windows. .NET Core was the cross-platform rewrite; after version 3.1 Microsoft renamed it simply .NET, and .NET 10 is the current long-term support release. Modern .NET runs on Windows, Linux and macOS and receives all new features.

How much does a .NET Framework to .NET Core migration cost in India?

With BtechWaleTech, custom software work including a .NET Framework to .NET Core migration starts at ₹60,000. The final figure depends on the number of Web Forms pages, WCF services, unsupported packages, existing tests and whether hosting moves to Linux. We audit first and quote each phase separately, so you approve and pay one phase at a time.

How long does a .NET Framework to .NET Core migration take?

A mid-sized business application usually takes 6 to 12 weeks. A small, clean Web API can move in about two weeks, while a solution with many Web Forms pages, several WCF services and Windows services can take longer. The audit, which takes a few working days, produces a phase-by-phase timeline before any build work starts.

Should I migrate to .NET 8 or .NET 10?

Target .NET 10. Microsoft’s support policy lists .NET 10 as a long-term support release supported until 14 November 2028, while both .NET 8 and .NET 9 reach end of support on 10 November 2026. Only pick an older version if a hosting provider or a critical package cannot yet run .NET 10, and plan the next step.

Can Web Forms be migrated to .NET Core directly?

Not directly. ASP.NET Core has no Web Forms, ViewState or server controls, so ASPX pages are rebuilt as Razor Pages or Blazor components. The business logic in the code-behind files can usually be moved into services and reused, which keeps the rebuild focused on the screens rather than the rules behind them.

Does WCF work on .NET Core or .NET 10?

WCF client code works through the System.ServiceModel client packages. Hosting WCF services is not built into modern .NET, but Microsoft’s documentation points to the community CoreWCF packages for keeping SOAP endpoints. Where you control both ends, moving to a REST API or gRPC is usually simpler to maintain over time.

Is the .NET Upgrade Assistant still recommended?

Microsoft Learn now lists the .NET Upgrade Assistant as officially deprecated and no longer actively developed, recommending the GitHub Copilot app modernization agent instead. Either tool helps with mechanical changes such as project conversion and package updates, but neither replaces reading the code, rebuilding Web Forms screens or checking that business results stay identical.

Will my app have downtime during the migration?

Usually not for users. In an incremental .NET Framework to .NET Core migration, a new ASP.NET Core app sits in front of the old one and forwards any route it does not yet handle. Routes move over one group at a time, so users keep using a single website. Short planned windows may be needed for database or DNS changes, agreed in advance.

Can a migrated .NET app run on Linux hosting?

Yes, once Windows-only code is removed or replaced. Modern .NET runs on Linux behind Nginx or in containers, and managed platforms such as Azure App Service for Linux support it. Code that uses the registry, COM, Windows authentication or Windows file paths must be changed first, which the audit flags.

Do I have to migrate Entity Framework 6 to EF Core at the same time?

No. Entity Framework 6 can run on modern .NET, so you can move the web layer first and upgrade the data layer later. This reduces risk because only one major piece changes per release. When you do move to EF Core, heavy queries should be checked, since query translation and loading behaviour differ.

Why hire freelancers instead of a large IT services vendor for a .NET migration?

A small freelance team suits migrations of business applications with one to a few solutions, where you want to talk to the developers doing the work and approve each phase. A large vendor suits programmes needing dozens of developers, on-site staff or formal procurement. BtechWaleTech is three freelance developers, so we say so when a project is beyond that size.

Who owns the code after the migration?

You do. The repository, cloud accounts, servers and domain stay in your name or are transferred to you at handover. We document the build and deployment steps so another developer can pick the project up later. Nothing depends on our personal accounts once the project closes.

What does maintenance cost after a .NET migration?

The first two months after go-live are free and cover fixes and small adjustments. After that, maintenance is optional and starts at ₹8,000/mo a month, covering .NET runtime patches, package updates, security checks and monitoring. Microsoft ships patches regularly, and staying on the latest patch is required for support.

How do you make sure calculations stay the same after migrating?

Before changing code we write characterisation tests that run real sample inputs, such as orders, invoices or payroll rows, through the old system and record the outputs. The migrated code must produce the same results. Rounding, dates, culture settings and string comparison are checked specifically, since they cause most silent differences.

Can you migrate a .NET Windows Forms or WPF desktop app?

Windows Forms and WPF can move to modern .NET while staying on Windows, which brings runtime support and newer libraries. If you want the desktop app to become a web app instead, that is a larger project we plan separately. Either way the audit looks at third-party controls first, since they decide most of the effort.

Do you sign an NDA before seeing our source code?

Yes, you can share your NDA before sending code, and the specific terms are agreed in writing between us. Share read-only repository access or a copy of the solution rather than production credentials during the audit. Our general terms are on the terms page, and anything specific to your project goes into the written quote.

How do payments work for a migration project?

Each phase is quoted and approved in writing before work starts, and nothing is billed before that approval. Clients in India pay by UPI or bank transfer and receive invoices with GST details where needed. International clients are quoted in USD and pay through Wise, bank wire or PayPal. Payment milestones are set out in the written quote.

Can you add a mobile app or AI features after the migration?

Yes. A migrated ASP.NET Core back end can expose a clean API for a Flutter or React Native app, which we build from ₹40,000, and can feed AI automation such as document reading or WhatsApp replies from ₹40,000. It is usually wise to finish and stabilise the migration first, then add new features on top.

Does a .NET migration help website SEO and speed?

It can, for public pages. ASP.NET Core serves pages with less overhead, and rebuilt Razor pages give clean HTML, proper headings and fast responses, which help Core Web Vitals. For logged-in business apps, SEO matters little; the gains there are speed, hosting cost and supportability. Nobody can promise rankings from a framework change alone.

.NET Framework se .NET Core par migration mein kitna time lagta hai?

Ek medium business app ke liye aam taur par 6 se 12 hafte lagte hain. Pehle kuch working days ka audit hota hai jisme Web Forms pages, WCF services aur purane NuGet packages ki list banti hai. Uske baad kaam phases mein hota hai, har phase ka quote alag, aur live app chalti rehti hai jab tak naya hissa test na ho jaye.

What if our original developer left and there is no documentation?

That is common, and it does not stop a .NET Framework to .NET Core migration. We start by getting the solution to build on a clean machine, recovering configuration from the production server, and mapping screens to code. The audit document becomes the missing documentation. If the source code is incomplete, we tell you exactly what is missing before quoting further work.

Next step

Send us your solution and get a phased migration plan

Share repository access or a short description on WhatsApp. You get an audit summary and an itemised, phase-by-phase quote in about two working days, with migration projects from ₹60,000 and two months of free maintenance after cutover.