I run an SQL Server Trace to track some deadlocks issues and I was hit on the head with this comment Parallel query worker thread was involved in a deadlock as
Parallel query worker thread was involved in a deadlock
Take a look at Understanding and Using Parallelism in SQL Server
You also want to take a look at using MAXDOP as a query hint
Sometimes all you need is an index, see Fix Execution Plan showing Parallelism