Where can I learn how to program an NXT using C#?
You could start here for example: LEGO MINDSTORMS NXT Tutorials Overview

For a generic C# introduction see here: C# Tutorials or The complete C# Tutorial or C# Tutorial or just do a Google search for "C# tutorial".