When using Linq to Sql and updating something like a cross reference table where they could already be records in the table that would just need to stay there, records that will change and records that could be removed. What is the best practice as to handle this? I am thinking delete all and recreate. Is that bad?

Should I delete the reference records and repopulate all of them. Naturally removing what is no longer needed and creating what is needed. 

or 

Should i attempt to perform some type of check and remove what is old with what is being added

or 

what is a better way?