So I found out that my router supports dual band (LinkSys E3000), so I went to its settings and changed it from operating on 20MHZ to 40MHZ . So does it mean I get better speed now? or I just have misunderstood how this works?
You won't get better speed by doing that change. You may get better signal, but there's a downside to it. Essentially, you will have a higher chance to have collisions with other wireless networks around you. I would keep it at 40 just so you have less packet loss.
Dual-band routers essentially give you two access points with each having their own bandwidth in them. Usually one AP will be in the 2.5GHz range and the other will be in the 5.0GHz range. Within each spectrum, there are several wi-fi modes that you can enable. The fastest will be Wireless N, with speeds of 300Mbps. However, those 300Mbps are all shared between all devices connected to that AP.
For example, if you have 5 devices in the 5GHz AP and one is using up 200Mbps, then the other 4 devices on the 5GHz AP will have 100Mbps to work with.
However, both AP's are isolated from each other(wirelessly anyways; they have the same Gateway IP so items on different AP's can still contact each other), so if you have two data-hungry wireless devices you could put one in the 2.5GHz AP and another in the 5.0GHz AP(assuming it supports 5GHz wifi).
If you want to get the fastest speed out of your router, enable both the 2.5 and the 5.0 AP's, configure them with wireless N, and split your devices across each network evenly one by one
yes if your NIC supports channel bonding setting up your wireless to 40Mhz will make double troughput as you get double connection speed and depend on your wireles NIC you can can up to 300Mbpx or even theoreticaly up to 600Mbps speed and this meen you have a higher real speed. But at 40Mhz you will have a bigger chance for channel overlaping and interfere with other wireless devices.