Decision matrix
The following table summarizes the migration and modernization options for legacy .NET applications, based on your use case and resources.
| Use case | Migration strategy and architecture | ||||
|---|---|---|---|---|---|
| Rehost | Replatform as a Windows container | Re-architect as a Linux container | Re-architect as microservices in Linux containers | Re-architect as microservices without containers | |
| You have resources for refactoring. |
|
|
|
|
|
| Your .NET legacy application is in constant use. |
|
|
|
|
|
| You can resolve .NET Framework dependencies. |
|
|
|
|
|
| You can remove Windows dependencies. |
|
|
|
|
|
| You want to run your application as a native Windows application on an Amazon Elastic Compute Cloud (Amazon EC2) instance. |
|
|
|
|
|
| Your code can be ported from .NET Framework to .NET Core or .NET 6. |
|
|
|
|
|
| You want to split your monolithic application. |
|
|
|
|
|
The following sections describe these options in detail: