Checks don't really expire but the bank will not usually cash a check that's over 6 months old.
That is that some banks might cash a check over 6 months old and some might not. It's up to the bank.
Beware though that if you cash the check and the funds aren't in the check writers checking account then you'll be liable for the amount that the bank paid you on the check when it's returned to you.
Make sure the person who wrote the check still has the money in the bank.
Always cash your checks as soon as possible.