I don't think this is related to SQL server because there's no consistency in this and it affects users independently. One user's system might be slow and everyone else is fine. Then two days later, a user in a different department has a slow system and everyone else is fine. Also, there is a 5 second or so delay when tabbing between two fields on a Form and there is no I/O between the two controls. 10-20 minutes later, there is no delay when tabbing between the same two fields.
I have noticed that the Running Query and Calculating messages appear at the bottom, but I can't find any Queries running? Is there any way to "trap" what is happening when these messages appear?