That was over 14 years ago in 2006.
Today he is 41, and has starred in 43 movies in total, 28 since The Last King of Scotland was released.
In The Last King of Scotland, I think James McAvoy looks:
The Last King of Scotland scores 7.4 out of 10 on The Movie Database.
James McAvoy's first acting role was as 'Kevin' in The Near Room, released in 1995 when he was 16.