Things started well for the Canaries when Damien Francis put them 1-0 up after 18 minutes.
The lead did not last long as Boro fought back and equalised through Jimmy Floyd Hasselbaink.
Norwich began to crumble in the second half, Franck Queudrue scored twice to make it 3-1, before Hasselbaink scored his second of the game to leave the scoreline at 4-1 to Middlesbrough.
With just ten minutes left, Norwich began to plug away.
An 80th minute goal from Dean Ashton gave his side hope.
Leon McKenzie headed an injury time goal to bring the score back to 4-3.
Norwich were not finished there as captain Adam Drury converted Darren Huckerby's corner to save his side and salvage a dramatic 4-4.