Hi Zahid,
Let's try a physical experiment, one where you can actually see what is happening.
You may have used a siphon sometime in your life. That is useful when you want to remove a liquid from a container that you can not pick up and pour the water out. You fill a hose with water and block at least one end so it stays full. Then put one end of the hose in the liquid you want to remove.
The other end of the hose is put in the receiving container, with this end below the liquid level of the big container.
Now remove the blockage(s) from the hose ends. The water will flow thru the hose, up over the edge of the big container, and into the the receiving container.
In the experiment, the big container is the battery, the hose is the wire and resistor, and the receiving container is the capacitor.
At first, the receiving container is filling fast. As its water level rises, it fills more slowly until its water level matches that of the big container. When the levels are the same, the flow stops. Try it. Lift the small container so the levels are the same. If you raise it higher than the big container the flow will reverse.
If that is too messy or too much trouble, you can do the same thing with a double sink if you have one in your kitchen. The same approach works even if you do not have a hose; you can use a wet dish towel instead.
You can raise and lower the outlet end of the hose, or dish towel, to see how the flow changes as it nears the water level in the full sink.
A capacitor charging acts the same way; as its voltage (level in receiving container) approaches the battery voltage (liquid level in the source) there is less voltage (height difference) across the resistor (hose) resultiing in less current (water flow).
That fancy capacitor voltage equation
VCAP = VBATT(1-e^(t/RC))
was figured out to fit what happens.
Well, kind of long winded. Hope it helps.
Cheers,
Tom