To improve English you should have a good grip over basic rules of grammar. You also need to have a good vocabulary backup. I would suggest you to work over basics like Tense, Voice, Narration and Conditionals because almost all the sentences are formed according to their structure and rules. So, first you should start with some entry level books like Junior Perfect English Grammar which is a very good book for mastering the basics of translation. Because we Indian first think a sentence in Hindi and then translate it in English. So, its necessary to master translation of different types of sentence from Hindi to English.
Next try to increase your vocab storage. The more word you have in your quiver, easier will be for you to understand and decode English sentences. Reading News papers, Novels or reading articles over internet can be of great help to understand different kind of sentence formation and usage of words. Develop a habit of reading to improve your English.
As far as books are concerned then start with some entry level books as I stated before. You can also take the help of Lucent's English Grammar book. Once you feel confident in these two books then you can move on to some advance book as suggested by other members.