Please, if you're on SQL2005, watch out that you have sufficient TEMPDB space to accommodate all those deleted rows.
When a row is deleted, it is stored in TEMPDB as, forgive the imprecise term, a "Pending Delete". Something akin to the C# Garbage Collector runs in the background, processing through TEMPDB records and "finalizing" the deletes.
If the rate of deletion exceeds the capacity of the Garbage Collector to clean up and free the TEMPDB space, you will grow TEMPDB.
If TEMPDB exceeds the available disk capacity - YOU DIE!
We used Itzik's small-batch with WAITFOR to annihilate over 500M rows in 5000 row batches. Ignorant of the ramifications above, Production DIED!
Thankfully, restarting the SQL Service got us going again. I can honestly say I've NO IDEA what the final effect of the Garbage Collector not finalizing each row was, but we've been running OK for the last 6 months, while still deleting, albeit far fewer on a daily basis, from the same table! Perhaps an Expert would like to comment...?