There is a lot more going on behind the scenes than you are showing us here (or can show us). Right now the code you posted looks fine. However, that all depends on your setup. It looks like there could be a couple different issues based upon what I see.
First, you might not have transferred the web service to your computer with the same settings as the server. It sounds like you are accessing a database inside your web service. Your machine might not have the ability to access that database server (because of firewall settings). Also, it could be that the account IIS Express is running your application pool under doesn't have rights to the database (if you are using trusted authentication).
Second, your pathing might be wrong inside your service. For instance, if your database is on the web server with your service, you might have referenced it with the dot (which means "this computer"). That won't work remotely. Also, if the web service accesses any files or other items by path, that path might be messed up.
In the end, I'm not sure that bringing all of this local in order to test maximum speed is a good idea. For instance, your local machine is most likely slower than the server (in terms of processor, RAM, etc.) Also, if you run the site with your debugger, it will be even slower. Finally, the results of the test won't give you good information to work with. If the site becomes blazingly fast locally, what does that show you? That it can? Real-world tests are the only true indicator of speed.
Update
If you are trying to operate your web service locally using the development server (Casinni), that is probably your problem. Casinni is not designed to be accessed by other websites/services on your computer. I would recommend moving to IIS Express. IIS Express is designed to handle this and it is free. I wrote an article about how to use IIS Express recently. Here is a link:
Make Web Development Easier with IIS Express[
^]