November to February: temperatures are mild (24-30°C), humidity is low, and there's virtually no rain. This is also when hotel prices are most stable.
March and April: still dry but hotting up (32-35°C). Fewer tourists mean discounted rooms, and you avoid the peak crowds.
Go between November and February for the best balance of good weather and moderate crowds.