Most efficient way to combine large Pandas DataFrames based on multiple column values

I am processing information in several Pandas DataFrames with 10,000+ rows. I have… df1, student information Class Number Student ID 0 13530159 201733468 1 13530159 201736271 2 …