This may sound like kind of weird advice, but maybe you should consider looking at this from a different perspective. Instead of looking for "what C# course should I take", maybe the question to ask is, "What specifically do I want to learn to do with C# and how do I get there"? Maybe a course is the right answer to that question, but maybe the right answer is something like coming up with a side project of your own to do in C#.
From your post, it sounds like you've already been doing some dabbling and are on your way. What I do when I want to pick up a new language or technology is I try to write a simple customer order entry application. It has a login screen, and once a customer is logged in they can select products to order, place an order, etc., and all this information is stored in a database. I don't really worry too much about fancy screens (unless that happens to be part of the thing I'm trying to learn), I focus on the technology I'm trying to learn and how to make things work. For example, right now I'm trying to do this exact project using struts and hibernate.
By doing your own projects like this, you learn very quickly where your knowledge gaps are, and sometimes you can fill those gaps just with some googling or using great resources like Stack Overflow. Other times you might realize that your knowledge is so limited in the area that maybe you do need to take a course or purchase a book on the topic.
Maybe you have thought all of these things through and have come to the conclusion that a course is the best route. You've already mentioned that you don't have a computer science background, so it's possible that a course in C# would be very beneficial. All I'm saying is that sometimes you'll really be surprised how far you can go on your own if you really just apply some serious effort and find out where your knowledge is lacking.
Good luck.