I've used a ton of different plugins and services to create and sell online courses, and here's the best combination I've found:
WordPress + Gumroad + ProductPress
1. WordPress: You'll use WordPress to host your course content. I typically put each lesson in a new Page.
2. Gumroad: Use Gumroad to sell your course, handle payments, and to communicate with your customers.
3. ProductPress: the ProductPress plugin will allow you to connect your WordPress site and Gumroad account together.
As soon as someone buys your course on Gumroad, they'll automatically be emailed login information for your WordPress site.
It's only $39 (one-time fee). More information here: http://productpress.me
We've had some great success with eventbrite.com. I could give you better suggestions if you created a list of your requirements. However, eventbrite has really outdone themselves and probably has covered most everything you'd need.
You could consider using DoAttend.com. It is a product that I built and is very popular among training providers. Specifically for training providers: http://doattend.com/training-class-registrations
There is no monthly fee or setup fee. The fee is only based on successful paid registrations.