Два основных фактора влияют на сложность языка:
То есть имеет значение, о каком иностранце идет речь. Если он говорит на одном из славянских языков (болгарский, польский и т.д.), то в русском он разберется достаточно быстро.
Для других представителей думаю, что русский язык сложнее английского. Например, русский язык – синтетический. То есть такие грамматические категории, как время, род, число, выражаются в пределах одного слова с помощью приставок, суффиксов, окончаний. Английский язык – аналитический. Его грамматика строится по другим законам. То есть грамматические значения и отношения передаются не через изменение слова, а прибавляются предлоги, модальные глаголы и другие части речи. Например, в английском грамматическое значение также имеет порядок слов, слова могут переходить из одной части речи в другую. Только контекст и порядок слов помогают понять, что имеется в виду не существительное, а глагол.
Есть такой параметр, как индекс синтетичности. Чем он выше, тем сложнее образуются формы слова. Аналитическими называют языки с величиной индекса ниже 2 (сюда относятся китайский, новогреческий, болгарский, персидский, итальянский, испанский, португальский, французский, датский и др.) Синтетическими являются языки с величиной индекса от 2 до 3 (русский, санскрит, древнегреческий, латынь, готский, литовский, старославянский, немецкий, чешский, польский, якутский, суахили и др.)
Также русский язык осложняется ударением, которое может стоять на любом слоге. Когда-то давно повеселил один американец, который никак не мог повторить за мной фамилию Ларина. В его воспроизведении она звучала как Ларина.
Ну и сложность определенных звуков, хотя в каждом языке имеются свои особенности.