
C# 애플리케이션을 제작하면서 json 사용을 위해 아래 네임스페이스를 포함하려 해도 불가능한 경우가 있다.

대부분의 이유는 해당 솔루션이 .NET Framework 프로젝트이기 때문인데, 솔루션 탐색기에서 사용 중인 솔루션을 우클릭하여 [Properties - Application - Target framework]를 확인하면 '.NET 0.0' 또는 '.NET Core 0.0' 이 아닌 '.NET Framework 0.0' 이 대상으로 설정되어 있는 것을 확인할 수 있다.
2019년 .NET Core 3.0이 나오면서 크로스 플랫폼 개발이 용이해졌고, 이후의 애플리케이션 개발은 .NET Core(.NET) 환경에서 이루어질 것이 권장되고 있다.

이전까지는 .NET Framework 환경이 주류였기 때문에 아직까지 지원은 할 뿐, 현대 개발에 .NET Framework는 적합한 환경이 아니다. 따라서 우리가 유용하게 사용할 라이브러리 등을 사용하지 못해 직접 패키지를 설치하거나, 결국 .NET 환경으로 포팅하게 된다.
하지만 .NET Framework 환경에서 개발을 진행해야 한다면, 앞서 말한 것처럼 직접 패키지를 설치해 json을 활용한 개발을 할 수 있다.
.NET Framework/.NET 환경 어디서든 사용할 수 있는 오픈 소스 Json.NET 라이브러리이다. .NET에선 자체적으로 json을 지원할 수 있도록 System.Text.Json 라이브러리가 추가되기도 했고 효율도 더 좋기 때문에 해당 오픈 소스 라이브러리를 설치할 필요가 없게 되었다.
.NET Framework는 해당 System.Text.Json 라이브러리를 사용할 수 없기 때문에 직접 Newtonsoft.Json를 설치해야 한다.
프로젝트 상단의 [Tools - NeGet Package Manager - Manage NuGet Packagesfor Solution...] 을 눌러 오픈 소스 패키지를 설치할 수 있다.

NuGet은 MS에서 공식적으로 확장한 오픈 소스 라이브러리 관리자 프로그램이다.

Browse 탭을 들어가면 맨 위에 자동으로 노출될 정도로 .NET Framework 환경에서 필수적인 라이브러리이다. 우측과 같이 대상 프로젝트를 설정한 뒤 [Install] 버튼을 누르면 간단하게 설치되고, 재시작할 필요도 없다.

이제 해당 라이브러리를 사용하여 .NET Framework 환경에서도 json 을 활용한 개발을 해보자.
▶ [Stack Overflow] Difference between "Windows Forms App" vs "Windows Forms App (.NET Framework)"