I have domains from different providers (GoDaddy, domaindotcom, namesilo, namecheap, etc) is there any way to manage DNS from one panel?
Sometimes when move to a new hosting server, we need to change each domain name server.. by login one by one.
Yes, through a third party service like http://www.dnsmadeeasy.com/dns-services/
For your domains you would set the Nameservers to the ones for DNS Made Easy (or whomever you chose). Once you do that, you'll be able to manage all of them from one control panel.
You have a few options. They range from Free to expensive. Free is pretty bad DNS in my personal experience example CloudFlare.com which can be used to host DNS.
If you have a hosting account like Dreamhost they allow DNS only hosting. Unlimited so for $7 a month its not bad... but
Some VPS providers like Linode also provide DNS hosting.
There is Amazon AWS Route53 that costs only 51 cents per month per domain. They have quite advanced tools and DNS controls which are (almost) as good as DNSMadeEasy.
Note on AWS: The free query limit is high enough that regular website DNS will not ever exceed it. (assuming a base TTL of 1 Hour)