April is warmer than March, which means average high temperatures in Delhi and the lowlands exceed 30 degrees. However up in Shimla April is considered more pleasant than March, with the average daily high at 19 degrees instead of 14. I suppose it depends what you prefer: if you like it warmer then go for April, if you find the heat more difficult to cope with then go for March. However both months are during the dry pre-monsoon period, so you don't need to worry about the rain!
I hope that helps,