This is an intermediate course on programming with Microsoft's .NET framework using C# as the language vehicle. Building on students' knowledge of Visual Studio and C# while also introducing Microsoft's ASP.NET programming language for web development, commonalities and differences between various types of development will be discussed. Emphasis will be placed on best practices, modularity, advanced features related to Windows Forms Applications, object-oriented programming, user experience and basic database implementation. Effective communication about programming concepts and professional development, both with the instructor and with peers, is emphasized in evaluations.