The difference is in the stability of the overall Debian tree. I've not been using Debian for very long, but as far as I can work out, the 'testing' branch (currently Sarge) will eventually become the 'stable' branch. Before it gets there, however, it goes through a number of "pre-releases" that take the number of the current stable version.
So, currently the stable is Debian Woody, which is in effect Debian 3.0.
The next stable Debian will be Sarge, which will be Debian 3.1.
Since Sarge has not yet been renamed as the "stable" branch, we have Debian 3.0r3, which is Sarge.
Confused yet?
Development --> Unstable (Sid) --> Testing (currently Sarge, Debian 3.0r3) --> Stable (currently Woody, Debian 3.0)
|