Landet har en felles grense med Pakistan i vest og nordvest og med Kina, Nepal og Bhutan i nord og øst. Det grenser også mot Myanmar og Bangladesh i øst og sørøst. Kyststripen er lang og grenser i vest mot Arabiahavet, i sør mot Indiahavet og i øst mot Bengalbukta. Klimaet varierer fra tropisk monsun i sør til temperert/kaldt i nord.