No, not everyone in India speaks Hindi or English. Hindi is the most spoken native language in India, but there are also many of other native languages, that are dominant in some regions. For example Bengali, Marathi or Telugu, Urdu or Punjabi.
English is the most spoken foreign language in India. Many people speak english at some level, but not everybody are fluent english speakers. You can expect, that many people in bigger cities speak english.