Where to learn C# online for free?

When someone is saying, "I want to learn ABCXYZ programming language", he/she should be answer the question, "What I want to do with it?"
- use it in web applications
- write desktop applications for Windows/Linux
- write server applications
- write embedded applications

C# is closely tied to .NET architecture, and as such is (not) best choice for some of these scenarios. My suggestion would be to drink from the source - Microsoft' msdn.com is the best resource for C# language. Download Visual Studio Express, and start experimenting. Go to your local library, there should be plenty of books on C# / .NET / Windows programming.