James McAvoy is actor and he is of Scottish nationality He appeared in many movies and TV shows He has a baby boy with his wife and his net worth is 17 million dollars