Idle time events. How to.

I am using a PN 532 Adafruit RFID Shield to read uids and want to start a timer each time a uid is read. After a certain time is reached I want to send out a specific Serial.write. Basically I want to send the serial.write after a certain amount of inactivity. Something like an idle time command. I thought about using millis () but i find the comparing values method cumbersome. Any suggestions for a newbie?

//01
  
  if(uid[0] == 0x64 && uid[1] == 0xBF && uid[2] == 0xD8 && uid[3] == 0x51)
  {
    //pause at beginning
          delay (500);
    //Serial.write("for Bässgen MM3210")
          Serial.write("listplay 1 1");
          Serial.write(13);
    //pause at end
          delay (3000); 
  } 
  //02
  
  if(uid[0] == 0x84 && uid[1] == 0x72 && uid[2] == 0xD4 && uid[3] == 0x51)
  {
    //pause at beginning
          delay (500);
    //Serial.write("for Bässgen MM3210")
          Serial.write("listplay 1 2");
          Serial.write(13);
    //pause at end
          delay (3000); 
  }
  //03
  
  if(uid[0] == 0x44 && uid[1] == 0xC9 && uid [2] == 0xD1 && uid[3] == 0x51)
  {
    //pause at beginning
          delay (500);
    //Serial.write("for Bässgen MM3210")
          Serial.write("listplay 1 3");
          Serial.write(13);
    //pause at end
          delay (3000); 
  }
if(uid[0] == 0x44 && uid[1] == 0xC9 && uid [2] == 0xD1 && uid[3] == 0x51)

Try "memcmp" or "memcmp_P"

but i find the comparing values method cumbersome

What does that mean?

but i find the comparing values method cumbersome. Any suggestions for a newbie?

Certainly. Get over it.