.NET Core is a cross-platform, open-source framework, while .NET Framework is Windows-only and proprietary. .NET Core offers better performance, modularity, and flexibility compared to .NET Framework. Developers may choose .NET Core for its ability to run on multiple platforms, support for microservices architecture, and ease of deployment using containers. Additionally, it receives more frequent updates and has a growing community contributing to its development.