Nothing is really better, both do exactly the same thing.
What happens is you register with them (for free) and get a name like yourname.dyndns.org (they have different names to choose from) Then on your PC there's a little utility you install, every time your IP address changes, it updates their DNS records (DNS records is basically "send this web address to this IP" so you can have a user friendly web address like
www.mybroadband.co.za but it actually lives on a specific IP)
The program updates the DNS records, and it doesnt matter then what your IP is, people can go to yourname.dyndns.org
What you also could do, if you have your own domain and can control it, is to make home.yourdomain.com point to yourname.dyndns.org
That way (for instance if you're a small business) you don't have to later worry telling all your clients to remember to go someplace else, they'll just continue using home.yourdomain.com long after you have the capital to get a static IP address (and it's as easy as updating your domain to point to somewhere else)
Hope this helped. Visit those sites for more info