Andy Galbraith has a script to find the largest tables in a database:
In the previous post in this series “Toolbox – Where Did All My Space Go?” I shared a script for finding which database files consumed the most space and which of those files had free space in them. The next step after finding out which databases are using the space is determining which tables in those databases are occupying that space to consider purge/archive opportunities. In many cases you will find a single large table (often called a “mother table”) taking up most of the space in your database.
There are cases when you wouldn’t want to use the Disk Usage By Table report, so here is a viable alternative.