You can take a bus from Colchester to Haverhill via Sudbury, Bus Station in around 2 h 41 min.
How to get from Colchester to Haverhill
From Colchester Town Centre, Head Street (Colch Head St) line 754 bus to Sudbury, Bus Station then line 236 bus to Haverhill, Bus Station. 2 h 41 min £11. From Colchester train to Marks Tey, train to Sudbury (Suffolk), walk to Sudbury, Bus Station, then line 236 bus to Haverhill, Bus Station. 2 h 58 min £14. From Colchester taxi to Haverhill. 47 min £72. From Colchester drive to Haverhill. 47 min £5.