The best time to visit is from September to June. The peak tourist season runs October to March, when the weather is cool and clear. February and March are particularly good — the rhododendrons in the hills above town bloom, the river is relatively calm, and the nights are cold but the days are warm. April and May are hot but manageable and less crowded.
The monsoon (July–August) brings heavy rains, flooding risk, and prohibited rafting. The 2013 Uttarakhand floods were catastrophic — many roads and bridges were destroyed, and thousands died. Rishikesh itself was less affected than the higher valleys, but the region is genuinely vulnerable to monsoon flooding and landslides. If you plan to trek in the surrounding hills, avoid the monsoon entirely.