Here is the basic schedule:
Gryffindor v. Slytherin
The first match of the year, normally held in November (PS, CS, PA, OP), but moved to the end of the season in PA (see below).
Hufflepuff v. Ravenclaw
Held at the end of November (PA10).
Ravenclaw v. Slytherin
Gryffindor v. Hufflepuff
Normally held shortly after St. Valentine's Day (CS14, OP26).
Hufflepuff v. Slytherin
Early May (OP30).
Gryffindor v. Ravenclaw
The last match of the season, held in late May, usually before final exams (PS17, OP30)