LEOs versus GEOs
I believe that most of the companies that are considering internet from space are looking at using Low Earth Orbiting (LEO) satellites, which orbit at an altitude of a few hundred miles above the surface. There are companies (such as Hughes) which provide satellite internet via Geosynchronous Earth Orbiting (GEO) satellites. However, each type has their own particular problems.
GEOs, since they're 22,000+ miles up, have a latency of almost a half-second (Time for the signal to go from the user up to the satellite, down to the server, up from the server, and down to the user.). That gets relatively painful for interactive transactions, especially when you realize that other latencies (e.g., server response time, ground transmission time, etc.) add to that. It's certainly better than infinite latency, but vastly inferior to fiber connections. Plus, you need a fair sized dish (18 inches or so?) for the signal to get to the bird and back.
LEOs, since they're only a few hundred miles up, have a much smaller latency. However, because they're so close to the ground, their access circle (the area of ground that they can see) is quite small, perhaps as small as a few hundred miles. Thus, to get adequate coverage, you need a bunch of them orbiting in a pattern. Plus, they usually need the ability to link signals to/from each other so that they have access to a ground access point connection (well, besides the one to the user). Getting 100 or so satellites up, and keeping them in the appropriate orbits, is not cheap nor easy. Obviously, it can be done (e.g., Iridium), but doing so very well may bankrupt the company trying to do it, unless they have an iron-clad business model.
Dave
P.S. I'll get my coat. It's the one with the Brilliant Pebbles in the pocket.