Multithreading may not be a solution here. The queries you are running dont seem very efficient. If these queries are taking one minute to run, than you might have to rethink what you are attempting. Here are a few suggestions: 1) Make sure your tables/views are indexed. If they are make sure your indexes are not fragmented. That will cause your queries to take longer than they should. 2) If you are using SELECT * and dont need all those columns, updatethe query to selec the columns you actually need. 3) Use stored procedures instead of inline queries. Stored procedures have an advantage because their statistics/execution plans are stored for future executions. This may increase the time it takes to run your query. 4) Make sure you dont have crazy joins. These are usually a major problem with complex, slow running queries. 5) If you are returing many many many rows, you may want to consider server side paging. Hope this helps.