1. Get some good books.

    http://www.apress.com/9781430242338?gtmf=r is my personal favorite for people who are just learning C#, or "old pros" who want some refreshers. (I read this book at least once a year) There is a .NET 3.5 version if you're only looking for "Mono-specific" stuff. But I'd highly suggest 4.5. Almost the entire book carries over into Mono, with the exception of Unity's mono (since it lacks a good GC, among other things).

    https://books.google.com/books/about/CLR_Via_C.html?id=QMdCf_mm55cC&hl=en (find the 4th edition if you can) is my go-to book for intermediate/professional C# devs.

    Most online "tutorials" don't really teach you the fundamentals, and make you understand things.

    If you're looking strictly for "online" stuff, Google, MSDN, and StackOverflow will be your best friends. (CodeProject as well). Find something you want to do, and keep hammering at it until you figure it out. The only way to learn is by doing.