Nail hit head.
Agree with Groen on this 100%.
Real world example:
Some councils up North made the same mistake and one still is (Sunderland city council). They paid for it dearly. I mean millions of pounds for the bottleneck. People couldn't work, information was not reaching other departments in the same building in time (literally took HOURS for mail to reach an office 100 ft away).
http://www.sunderland.gov.uk/index.aspx?articleid=6088
Stupid implementation isn't a reason not to use the cloud. You can screw up a local implementation just as good, you don't stop driving BMWs because a couple of owners drove theirs like morons and stuffed them into a wall do you?
Most of it is still ongoing, they cannot backout quickly. Think of it this way; 1000mbit or even 100mbit pipe is ideal for Exchange and AD. If you artificially create a limit on a lane or pipe for 10mbit EVERYTHING slows down, unless you enable QoS. But QoS cannot determine which service is more "important" at a specific time or which email is more "important" than the other important emails. You essentially create an artificial bottleneck on your own services which is very hard to backout of after implementation.
Again, bad implementation, you size your circuits appropriately, you *can* run 10-20 users off 10Mbit just fine. I know this because we do it in dozens of locations worldwide, not a single one of our offices has even one server in it, they're better in a datacenter.
If you have 500 users then you might need Gigabit circuits, but fortunately, if you have 300 users then you can likely afford the £60k that a pair of resilient Gig circuits will cost.
Only if you dramatically increase your connection throughput to your outside world AND ensure redundant (fully redundant failovers over multiple lines) does the cloud make sense for business critical services. Even then if your throwing all that money at the problem, why not negate the entire problem and do it internally anyway?
resilient connections are a given for any half way sane company anyway, if a company is of any decent size and don't have resilient connectivity then their IT department needs shooting.
The other benefits are multiple - it doesn't matter where your office is, where your users are. Our users get the same experience whether they login in London or Vancouver, it's seemless, local office IT can't provide that (unless you spend vast amounts on the circuit to the office to turn it into a datacenter - which is pointless). If the office burns down, the staff can work from home or you can move into new office, there's no invoking DR plans which might or might not work to new hardware or whatever, it's business as usual (which is exactly what you need in that situation).
I am pro-cloud as part of my job, but moving your internal services to the cloud sounds like problem creation (do you work for a council?

) where there really isn't a problem. The cloud can be used and utilised effectively to improve performance and productivity but this isn't one of them. Just my 2p.
There is a problem, the previous way of doing things didn't work today, it's not flexible, can't adapt, it was uninspired and guided entirely by what was easiest. There's a lot of people who think the cloud is a bad idea because they don't like change, don't understand it and aren't good enough at their jobs to implement it correctly.
End of the day, IT is a service, cloud services are usually cheaper and present as OPEX rather than CAPEX, they will win, so I'd get used to implementing them right.