That sounds similar to what is asked here: How to prevent some WP users from being able to login to Discourse. The second post in that topic shows one way of implementing it.
Another approach would be to allow all users on your WordPress site to access Discourse, but restrict access to some categories on your forum to users who have signed up for a course. This is more complicated to implement, but can be done. See Manage group membership in Discourse with WP Discourse SSO for details about some functions the plugin makes available for this.
No, nothing will change in the WordPress login experience.