How can so many memory cells fit on MicroSd card?
Flash memory is currently made in a \$19nm = 1.9 * 10^{-8}\$ m process. Since a cell is basically just one transistor, this leads to a minimum of \$3.6 * 10^{-16} m^2\$per cell. 

In silicon, the inter-atomic distance is about \$2.35 *10^{-10}m\$. Making the area that an atom occupies about \$5 * 10^{-20} m^2\$. 

Now you have to see that each cell is a three-dimensional object, leading to about \$10^6\$ atoms per cell. 

Fits easily...

Mind you, the above numbers are estimates, ignoring material mix etc. 

Now lets look at the area size of a 64 Gbit chip. Thats about \$7 * 10^{10}\$ cells. If it were square-ish, it would have about \$2.5 * 10^5\$ cells per row. Whoops, thats \$2 * 2.5 * 10^{-8} * 10^5 = 5 * 10^{-3} m = 5mm\$ square at least.

For a 32GB card, we'd need 4 of those. So yes, they probably are stacked.

With the expected higher integration, maybe down to a 10nm process, and threedimensional stacking of transistors within the chip, it looks like the volumetric size will be reduced by about a factor of ten within a year or two.