Also worth taking snapshots of waiting tasks during these runs. It could bring up resource names that force everything else to wait for.
If there are many active spids but just one is under scrutiny - Paul Randal had a script to use XEvents and hone into a spid for a few seconds and see all waits incurred during those seconds. It's easy to capture 10s of thousands of events per second, but it is useful for a 'slice' of the query's activity.
Cheers,
JohnA
MCM: SQL2008