Program session represents a time period in which all the courses in the program are run. In academic world, they could resemble a semester. Program session in turn contains a course session for each course in the program (although its not required that every course in the program must have a course session in every program session, read further for more examples). Enrollment of learners can be done in the program session or specific course sessions. When someone gets enrolled in the programSession, they implicitly get enrolled in the courseSessions included in that programSession.
It is not required that each program session always contains course-sessions for all courses included in the program. For example the picture below shows a program with 3 courses and each program session only offers any 2 courses, and not all 3.
Further Reading: Creating Programs