Are you familiar with the Blocked Process Report? It's an xml report on blocking which you can configure and then collect with a trace. As blocking is fairly normal in a database, you configure the threshold in seconds eg you might think processing blocking for 5 seconds is ok, and only collect processes blocked for over 30 seconds, eg
EXEC sp_configure 'blocked process threshold', 30
Then configure the trace to collect the report. The event is located in the 'Errors and Warnings' section of the Profiler Events:
Consider a server-side trace rather than a Profiler GUI trace to reduce the overhead. Save the results to a table and then interrogate them using XQuery. Post back if you need any further help with this.
If you are finding blocking excessive in your database, you might consider the snapshot isolation levels, although there is some overhead to these.