개발자라면 누구나 한 번쯤은 고민해봤을 문제가 있습니다. “내가 사용하고 있는 .NET Framework (닷넷 프레임워크)버전이 언제까지 지원될까?” 특히 레거시 시스템을 운영하거나 장기 프로젝트를 진행하는 경우, 이 질문의 답은 매우 중요합니다.
Microsoft의 .NET Framework (닷넷 프레임워크) 지원 정책은 생각보다 복잡하고, 버전마다 다른 지원 종료 일정을 가지고 있어서 많은 개발자들이 혼란을 겪고 있습니다. 오늘은 이런 혼란을 말끔히 해결해드리고자, 최신 정보를 바탕으로 .NET Framework의 모든 버전별 지원 종료 일정을 정리해드리겠습니다.
1. Microsoft .NET Framework (닷넷 프레임워크) 지원 정책의 핵심 이해하기
Microsoft .NET Framework의 지원 정책을 이해하려면 먼저 몇 가지 중요한 개념을 알아야 합니다.
.NET Framework 4.5.2 이후 버전부터는 Windows 운영체제의 구성 요소(Component)로 취급됩니다. 이는 .NET Framework의 지원 생명주기가 해당 프레임워크가 설치된 Windows 운영체제의 지원 생명주기와 연결된다는 의미입니다.
예를 들어, .NET Framework 4.8이 Windows 10에 설치되어 있다면, Windows 10이 지원되는 동안 .NET Framework 4.8도 계속 지원받을 수 있습니다. 이는 개발자들에게는 좋은 소식이지만, 동시에 운영체제 업그레이드 계획도 함께 고려해야 한다는 점을 의미합니다.
2. 현재 지원 중인 .NET Framework 버전들
현재 Microsoft에서 공식적으로 지원하고 있는 .NET Framework 버전들을 살펴보겠습니다.
주요 지원 버전 현황표
버전 | 출시일 | 지원 상태 | 지원 종료일 | 비고 |
---|---|---|---|---|
.NET Framework 4.8.1 | 2022년 8월 9일 | ✅ 지원 중 | 운영체제에 따름 | 최신 버전, Windows 11 기본 포함 |
.NET Framework 4.8 | 2019년 4월 18일 | ✅ 지원 중 | 운영체제에 따름 | Windows 10/11 기본 포함 |
.NET Framework 4.7.2 | 2018년 4월 30일 | ✅ 지원 중 | 운영체제에 따름 | Windows Server 2019 기본 포함 |
.NET Framework 4.7.1 | 2017년 10월 17일 | ✅ 지원 중 | 운영체제에 따름 | – |
.NET Framework 4.7 | 2017년 4월 5일 | ✅ 지원 중 | 운영체제에 따름 | Windows 10 Creators Update 포함 |
.NET Framework 4.6.2 | 2016년 8월 2일 | ✅ 지원 중 | 운영체제에 따름 | Windows 10 1607/Server 2016 기본 포함 |
.NET Framework 3.5 SP1 | 2008년 8월 11일 | ✅ 지원 중 | 2029년 1월 9일 | 독립형 제품 (Windows 10 1809+) |
.NET Framework 4.8.1은 현재 가장 최신 버전으로, 향후 Windows 릴리스와 함께 계속 배포될 예정입니다. 지원되는 Windows 버전에 설치되어 있는 한 계속해서 지원받을 수 있습니다.
흥미로운 점은 .NET Framework 3.5 SP1이 Windows 10 버전 1809 및 Windows Server 2019부터 독립형 제품(Standalone Product)으로 분류되어 2029년 1월 9일까지 확정적인 지원 종료 날짜를 가지고 있다는 것입니다.
3. 지원이 종료된 .NET Framework 버전들
안타깝게도 이미 지원이 종료된 버전들도 많습니다. 특히 주목할 점은 2022년 4월 26일에 여러 버전이 한꺼번에 지원 종료된 것입니다.
최근 지원 종료 버전 (2016년~2022년)
버전 | 출시일 | 지원 종료일 | 종료 사유 |
---|---|---|---|
.NET Framework 4.6.1 | 2015년 11월 30일 | 2022년 4월 26일 | SHA-1 인증서 보안 문제 |
.NET Framework 4.6 | 2015년 7월 20일 | 2022년 4월 26일 | SHA-1 인증서 보안 문제 |
.NET Framework 4.5.2 | 2014년 5월 5일 | 2022년 4월 26일 | SHA-1 인증서 보안 문제 |
.NET Framework 4.5.1 | 2013년 10월 17일 | 2016년 1월 12일 | – |
.NET Framework 4.5 | 2012년 8월 15일 | 2016년 1월 12일 | – |
.NET Framework 4.0 | 2010년 4월 12일 | 2016년 1월 12일 | – |
.NET Framework 4.0 업데이트 버전들
버전 | 출시일 | 지원 종료일 | 주요 개선사항 |
---|---|---|---|
.NET Framework 4.0.3 | 2012년 3월 5일 | 2016년 1월 12일 | SQL Server 관련 개선 |
.NET Framework 4.0.2 | 2011년 10월 27일 | 2016년 1월 12일 | SQL Server 새 기능 지원 |
.NET Framework 4.0.1 | 2011년 4월 18일 | 2016년 1월 12일 | WF 디자이너 추가, VS 2010 SP1 필요 |
초기 .NET Framework 버전들 (2002년~2011년)
버전 | 출시일 | 지원 종료일 | 주요 특징 |
---|---|---|---|
.NET Framework 3.5 | 2007년 11월 19일 | .NET 3.5 SP1로 통합 | LINQ, AJAX 지원 |
.NET Framework 3.0 SP2 | 2008년 8월 | 2011년 7월 12일 | WCF, WPF 개선 |
.NET Framework 3.0 SP1 | 2007년 11월 | 2011년 7월 12일 | 성능 개선 |
.NET Framework 3.0 | 2006년 11월 6일 | 2011년 7월 12일 | WPF, WCF, WF, CardSpace 도입 |
.NET Framework 2.0 SP2 | 2008년 8월 11일 | 2011년 7월 12일 | 마지막 Windows 2000 지원 |
.NET Framework 2.0 SP1 | 2007년 11월 19일 | 2011년 7월 12일 | 보안 및 성능 개선 |
.NET Framework 2.0 | 2005년 10월 27일 | 2011년 7월 12일 | 제네릭, nullable 타입 |
.NET Framework 1.1 SP1 | 2004년 8월 30일 | 2013년 10월 8일 | 마지막 Windows NT 4.0 지원 |
.NET Framework 1.1 | 2003년 4월 3일 | 2013년 10월 8일 | Windows Server 2003 기본 포함 |
.NET Framework 1.0 SP3 | 2004년 8월 30일 | 2009년 7월 14일 | 보안 업데이트 |
.NET Framework 1.0 SP2 | 2002년 8월 7일 | 2009년 7월 14일 | 안정성 개선 |
.NET Framework 1.0 SP1 | 2002년 3월 19일 | 2009년 7월 14일 | 초기 버그 수정 |
.NET Framework 1.0 | 2002년 2월 13일 | 2009년 7월 14일 | 최초 버전, Windows XP 포함 |
2022년 4월 26일 지원 종료의 배경은 매우 중요합니다. Microsoft는 보안 강화를 위해 SHA-1 알고리즘을 사용한 디지털 서명된 .NET Framework 콘텐츠를 퇴출하기로 결정했습니다. SHA-1 알고리즘이 더 이상 안전하지 않다고 판단되었기 때문입니다.
만약 여러분이 아직 이러한 버전들을 사용하고 있다면, 즉시 .NET Framework 4.6.2 이상으로 업그레이드해야 합니다.
4. 완전한 .NET Framework 버전 목록 및 CLR 정보
.NET Framework의 모든 버전을 CLR(Common Language Runtime) 버전과 함께 정리하면 다음과 같습니다.
버전별 CLR 및 Visual Studio 호환성
.NET Framework 버전 | CLR 버전 | Visual Studio 버전 | Windows 기본 포함 버전 | 주요 특징 |
---|---|---|---|---|
4.8.1 | 4.0 | 2022 | Windows 11 (21H2 제외) | 최신 버전, 향후 Windows 기본 포함 |
4.8 | 4.0 | 2019 | Windows 10 (1903+), Windows 11 | 마지막 주요 기능 업데이트 |
4.7.2 | 4.0 | 2017/2019 | Windows 10 (1803), Server 2019 | SQL 연결 개선, 암호화 강화 |
4.7.1 | 4.0 | 2017 | Windows 10 (1709) | .NET Standard 2.0 지원 |
4.7 | 4.0 | 2017 | Windows 10 (1703) | 고 DPI 지원, 암호화 개선 |
4.6.2 | 4.0 | 2015/2017 | Windows 10 (1607), Server 2016 | 암호화 및 ASP.NET 개선 |
4.6.1 | 4.0 | 2015 | Windows 10 (1511) | WPF, WCF 개선 ❌ 지원 종료 |
4.6 | 4.0 | 2015 | Windows 10 (RTM) | JIT 개선, HTTPS 강화 ❌ 지원 종료 |
4.5.2 | 4.0 | 2013 | – | OS 버전 감지 개선 ❌ 지원 종료 |
4.5.1 | 4.0 | 2013 | Windows 8.1, Server 2012 R2 | 성능 개선 ❌ 지원 종료 |
4.5 | 4.0 | 2012 | Windows 8, Server 2012 | async/await, MEF 개선 ❌ 지원 종료 |
4.0 | 4.0 | 2010 | – | 병렬 처리, DLR ❌ 지원 종료 |
3.5 SP1 | 2.0 | 2008 | Windows 7, Server 2008 R2 | Entity Framework, ADO.NET Data Services |
3.5 | 2.0 | 2008 | – | LINQ, AJAX ❌ SP1으로 통합 |
3.0 | 2.0 | 2005 | Windows Vista, Server 2008 | WPF, WCF, WF ❌ 지원 종료 |
2.0 | 2.0 | 2005 | – | 제네릭, nullable 타입 ❌ 지원 종료 |
1.1 | 1.1 | 2003 | Windows Server 2003 | 이동식 장치 지원 ❌ 지원 종료 |
1.0 | 1.0 | 2002 | Windows XP Media Center/Tablet | 최초 버전 ❌ 지원 종료 |
.NET Framework 아키텍처 이해
.NET Framework 2.0, 3.0, 3.5는 모두 CLR 2.0을 공유합니다. 이는 연속적인 계층 구조로 구성되어 있어:
- .NET Framework 3.5 설치 시 → 2.0 SP2 + 3.0 SP2도 자동 설치
- 하나의 시스템에서 2.0, 3.0, 3.5를 동시 실행할 수 없음
- 3.5에서 2.0/3.0용 앱도 실행 가능
.NET Framework 4.x 시리즈는 모두 CLR 4.0을 공유하며:
- In-place 업데이트 방식 (이전 버전을 대체)
- 한 시스템에 하나의 4.x 버전만 설치 가능
- 이전 4.x 버전용 앱이 최신 버전에서 실행 가능
5. 레거시 .NET Framework 버전들의 역사적 의미
즉시 조치가 필요한 경우
만약 현재 다음 버전들을 사용하고 있다면 즉시 업그레이드가 필요합니다:
- .NET Framework 4.6.1 이하 모든 버전
- 특히 4.5.2, 4.6, 4.6.1 (이미 지원 종료)
권장 마이그레이션 경로:
- .NET Framework 4.6.2 이상으로 즉시 업그레이드
- 가능하다면 최신 버전인 4.8.1로 업그레이드
- 장기적으로는 .NET 6/8 (LTS) 또는 최신 .NET으로 마이그레이션 고려
Windows 운영체제별 .NET Framework 지원 현황
Windows 버전 | 기본 포함 .NET Framework | 최대 지원 버전 | Windows 지원 종료 |
---|---|---|---|
Windows 11 | 4.8 | 4.8.1 | 미정 |
Windows 10 22H2 | 4.8 | 4.8.1 | 2025년 10월 14일 |
Windows Server 2022 | 4.8 | 4.8.1 | 2031년 10월 14일 |
Windows Server 2019 | 4.7.2 | 4.8.1 | 2029년 1월 9일 |
중요한 포인트: Windows 10 22H2는 Windows 10의 마지막 지원 버전이며, 2025년 10월 14일에 지원이 종료됩니다. 이후에는 Windows 11로 업그레이드하거나 Windows 10 Extended Security Updates (ESU)를 구매해야 합니다.
6. 개발 환경에서 주의해야 할 사항들
Visual Studio 지원 제한사항
Visual Studio 2022부터 중요한 변화가 있습니다:
- .NET Framework 4.0 ~ 4.5.1 구성 요소가 더 이상 포함되지 않음
- 해당 버전들을 타겟으로 하는 앱 빌드 불가
- 계속 개발하려면 Visual Studio 2019 이하 버전 사용 필요
프로젝트 타겟팅 권장사항
<!-- 권장: 최신 지원 버전 사용 -->
<TargetFramework>net48</TargetFramework>
<!-- 또는 다중 타겟팅 -->
<TargetFrameworks>net48;net6.0</TargetFrameworks>
7. .NET Framework vs .NET (Core) 비교
많은 개발자들이 .NET Framework와 .NET (.NET Core의 후속)의 차이점과 마이그레이션 시점에 대해 궁금해합니다.
주요 차이점 비교
항목 | .NET Framework | .NET (.NET Core) |
---|---|---|
플랫폼 지원 | Windows 전용 | 크로스 플랫폼 |
배포 방식 | 시스템 전역 설치 | 앱별 배포 가능 |
성능 | 안정적 | 더 빠름 |
지원 정책 | OS 생명주기 따름 | LTS/STS 정책 |
미래 전망 | 유지보수 모드 | 적극적 개발 |
.NET Framework 4.8은 해당 플랫폼의 마지막 주요 버전입니다. Microsoft는 향후 새로운 기능 개발을 .NET (구 .NET Core)에 집중하고 있습니다.
8. 마이그레이션 체크리스트 및 실행 계획
단계별 마이그레이션 가이드
1단계: 현재 상황 파악
# 설치된 .NET Framework 버전 확인
reg query "HKLM\SOFTWARE\Microsoft\Net Framework Setup\NDP" /s
2단계: 호환성 검토
- .NET Portability Analyzer 사용
- 의존성 라이브러리 호환성 확인
- 레거시 API 사용 여부 점검
3단계: 마이그레이션 실행
- 테스트 환경에서 먼저 검증
- 단계적 업그레이드 (4.6.2 → 4.8 → .NET 6/8)
- 성능 및 기능 테스트 수행
비용 대비 효과 분석
시나리오 | 단기 비용 | 장기 이익 | 권장도 |
---|---|---|---|
.NET Framework 4.8로 업그레이드 | 낮음 | 중간 | ⭐⭐⭐⭐ |
.NET 6/8로 마이그레이션 | 높음 | 높음 | ⭐⭐⭐⭐⭐ |
현상 유지 (지원 종료 버전) | 없음 | 매우 낮음 | ⭐ |
9. 향후 로드맵과 준비해야 할 것들
Microsoft의 .NET 로드맵
Microsoft는 매년 11월 새로운 .NET 버전을 릴리스하는 예측 가능한 일정을 유지하고 있습니다:
- 짝수 버전: LTS (3년 지원) – .NET 6, 8, 10…
- 홀수 버전: STS (2년 지원) – .NET 7, 9, 11…
2025년 11월에는 .NET 10이 출시될 예정이며, 이는 다시 LTS 버전이 될 것입니다.
장기 전략 수립 가이드
2024-2025년: .NET Framework 4.8로 안정화 2025-2026년: .NET 8 (LTS) 마이그레이션 검토 2026년 이후: 완전한 .NET 생태계로 전환
10. 실제 경험에서 얻은 팁들
마이그레이션 시 자주 발생하는 문제들
호환성 문제:
- System.Web 의존성이 있는 코드들
- WCF 서비스 (CoreWCF로 대체 가능)
- Windows Forms 디자이너 관련 이슈들
성능 이슈:
- JIT 컴파일 최적화 차이
- 가비지 컬렉션 동작 변화
- 메모리 사용 패턴 변경
이런 문제들은 대부분 해결 가능하지만, 충분한 테스트 시간을 확보하는 것이 중요합니다.
11. .NET Framework 버전 확인 및 관리 방법
설치된 .NET Framework 버전 확인하기
1. 명령 프롬프트 방법
reg query "HKLM\SOFTWARE\Microsoft\Net Framework Setup\NDP" /s
2. PowerShell 방법
Get-ChildItem 'HKLM:\SOFTWARE\Microsoft\NET Framework Setup\NDP' -Recurse |
Get-ItemProperty -Name version -EA 0 |
Where { $_.PSChildName -Match '^(?!S)\p{L}'} |
Select PSChildName, version
3. .NET Framework 4.5 이상 정확한 버전 확인
(Get-ItemProperty "HKLM:SOFTWARE\Microsoft\NET Framework Setup\NDP\v4\Full\" -Name Release).Release
릴리스 번호와 .NET Framework 버전 매핑
릴리스 번호 | .NET Framework 버전 |
---|---|
533320 이상 | 4.8.1 |
528040 이상 | 4.8 |
461808 이상 | 4.7.2 |
461308 이상 | 4.7.1 |
460798 이상 | 4.7 |
394802 이상 | 4.6.2 |
394254 이상 | 4.6.1 |
393295 이상 | 4.6 |
추천 리소스
- Microsoft .NET Framework 공식 지원 정책
- Microsoft 제품 수명주기 정보
- .NET 마이그레이션 가이드
- .NET Framework 버전 및 종속성
- EndOfLife.date – .NET Framework
Microsoft .NET Framework(닷넷 프레임워크)의 지원 종료 일정을 제대로 이해하고 대비하는 것은 안정적인 시스템 운영과 보안 유지에 필수적입니다. 특히 2022년에 여러 버전이 지원 종료된 만큼, 현재 사용 중인 버전을 정확히 파악하고 필요시 즉시 업그레이드를 진행해야 합니다. 장기적으로는 .NET Framework에서 최신 .NET으로의 마이그레이션을 고려해보시기 바랍니다. 비록 초기 투자 비용이 들 수 있지만, 성능 향상, 크로스 플랫폼 지원, 그리고 지속적인 기술 지원을 받을 수 있다는 장점이 있습니다. 🙂