SharePoint API has class and function SPContentTypeUsage.GetUsages that returns all content type usages in site collection. Is MSDN article there is an C# sample too.
Also look at the accepted answer in this question question . The answer is in PowerShell.