DNS providers resolve the host name only (example.com => (93.184.216.34), it doesn't see the rest of the URL (path, parameters).
Do you mean ISP (your internet service provider)? With HTTPS the connection to the website is encrypted. The ISP can only see that you connect to the domain name, not the path or parameters. With unencrypted HTTP they'd be able to see the full URL.
> In that case isn't an obfused URL better?
As long as the connection is encrypted (https://...) it should be fine. Obfuscated URLs would help you when you worry that somebody is accessing your browser cache, bookmarks or a browser plugin sending URL to a third-party.