India has raised interest rates for the second time in three months in an effort to rein in inflation.
The growing economy has pushed prices higher
The Reserve Bank of India increased rates to 7.75% from 7.5%, its highest level in almost four-and-a-half years.
The bank said it had been necessary to take "demonstrable and determined action" to tackle inflation, but the move came as a surprise to analysts.
Inflation has been running at 6.46% recently, well above the central bank's target level of between 5% and 5.5%.
Analysts had not expected the bank to make a move on rates until April at the earliest.
"Today's move took us (and the markets) a little by surprise," said research group Capital Economics.
"Nonetheless, it is an understandable move that reflects the need to slow the economy, which is in growing danger of overheating."
The central bank also ordered commercial banks to hold a larger share of deposits in cash - its cash reserve ratio (CRR).
As a result commercial banks must now hold 6.5% of their deposits in cash, up from the previous 6%.
The CRR increase, the third since December, is expected to take 155bn rupees ($3.5 billion, £1.7bn) from the banking system.
India's brisk economic expansion - the economy is growing at almost 9% for the second year in a row - has boosted middle class incomes, but it is also driving up prices.
In recent months, the country's poor have been hit hard by the rising price of staple foods.
In an effort to tackle the problem the government has cut import duty on edible oils, steel and cement.
Meanwhile surging inflation has also prompted fears that the economy could overheat and be headed for a hard landing unless it is brought under control.