Most of the projects in this repository were assigned in the Learn to Code by Making Games - The Complete Unity Developer course, which is an excellent course and one I highly recommend to anyone interested in learning C# or game development.
The class is designed and taught by entrepreneur and game developer, Ben Tristem, who is author of the book Unity Game Development in 24 Hours. As the title of the course would suggest, you learn to program in C# by building games and jumping right in to programming from the very start. You learn the theory as you go along and Tristem goes out of his way to point out many best practices in writing and formatting your code as you go along. Each tutorial contains many challenges that you must figure out for yourself, followed by a detailed walkthrough, and then a final tutorial where he demonstrates how to refactor and clean up your code, using his own demo code.
There is also a large and very helpful community of students who are enrolled in the course and with whom you can communicate in the discussion section. In most circumstances, any question you may have has already been asked and answered, but if not, you can expect to get feedback on your question in just a few hours. It's one of the most worth-while online courses I've taken and I cannot recommend it enough for those who are interested.