| Pros |
| 1. State synchronization problem does not exist. Savings on side-by-side state synchronization development, incorporation, and testing. |
| 2. Native state management. |
| 3. Full load balancing. |
| 4. .NET security mechanisms can be used. |
| 5. Ease of integration with other .NET technologies. |
| 6. Better performance by using page compilation. |
| 7. Better performance by using caching. |
| 8. Can utilize .NET configuration and maintenance benefits. |
| 9. Can utilize .NET deployment benefits. |
| 10. All other .NET managed code benefits. |
| 11. Ready for step-by-step optimization. |
| Cons |
| 1. Power of .NET is not fully used. Server controls, data binding, and so on, are not utilized. |
| 2. Communicates with business and data layers through COM interoperability, causing possible performance degradation. |
| 3. Old ASP design stays in place. This makes it difficult to support and extend the code. |
| 4. Increased risk, cost, and time compared to "as is side-by-side" presentation layer usage. |
| 5. ASP.NET pages must use single-threaded apartment (STA) to communicate with COM objects. |
| 6. Interoperability assemblies have to be deployed. |
| 7. .NET Framework has to be deployed on all web servers. |