Ο εξυπηρετητής στέλνει τα γεγονότα στον πελάτη τοποθετώντας τα σε μία ουρά FIFO (first-in, first-out) που μπορεί να διαβαστεί από τον πελάτη. Κάθε γεγονός αποτελείται από μία δομή δεδομένων (data structure) που περιέχει τον τύπο του γεγονότος, το παράθυρο μέσα στο οποίο έλαβε χώρα το γεγονός και δεδομένα ξεχωριστά για κάθε τύπο γεγονότος.
Οι περισσότερες εφαρμογές που τρέχουν στα Χ Windows είναι σχεδιασμένες έτσι ώστε να περιμένουν να συμβεί ένα γεγονός, στη συνέχεια να ανταποκρίνονται σε αυτό με τις ανάλογες ενέργειες και έπειτα περιμένουν ξανά για το επόμενο γεγονός. Οι εφαρμογές αυτές που λειτουργούν με βάση τα γεγονότα που συμβαίνουν χαρακτηρίζονται ως event-driven (καθοδηγούμενες από τα γεγονότα). Το σύστημα αυτό σε συνδυασμό με τα αιτήματα (requests) που αναφέρθηκαν παραπάνω παρέχουν ένα ισχυρό και ευέλικτο μοντέλο για την ανάπτυξη διαλογικών προγραμμάτων μέσα σε περιβάλλον multi-tasking. Περαιτέρω αναλύση του θέματος γίνεται στο 3ο κεφάλαιο.