• Here's a very simple way using sp_spaceused function

    declare @tblname nvarchar(100)

    Select @tblname = 'yyyyyyyyyy' -- put your table name here

    declare @test-2 table(name varchar(100),numrows bigint, reserved nvarchar(1000),data nvarchar(1000),index_size nvarchar(1000),unused nvarchar(1000))

    Insert into @test-2 exec sp_spaceused @tblname

    Select numrows from @test-2

    This gives the results within seconds for even very big tables (>100GB size)