Хорошо, было бы классно понять разницу на деле)
Apache - это веб сервер. Это его основная и главная задача. Он работает со всякими пыхыпы, пайтонами, перлами и прочим.
Nginx - это кеширующий прокси. Это его основная задача. Он создан для того, чтобы кешировать твою статику и быстро отдавать ее клиенту, проксируя динамику на веб сервер. Т.е. он ставится перед апачем и работает как прокси.
Оба из них могут выполнять задачи друг друга технически. Но предназначены они именно каждый для свой цели и все остальное выполняют из рук вон плохо.
Кроме того, тот же апач 90% людей даже настраивать не умеют и тот же пхп прикручивают к нему в качестве модуля, а не приложения. По итогу имеем тупящий и жрущий веб сервер.
С другой стороны, тот же nginx 90% так же не умеют настраивать и получают туже картину, что и с апачем.
Вся проблема в том. что в свое время один идиот решил, что раз nginx из коробки такой легкий (что понятно, ибо задачи у него другие и соответственно у него все повыключено нафиг дефолтно), что его классно использовать в качестве веб сервера. Поставил, сравнил итог с совершенно не настроенным апачем и побежал радостный кукарекать про превосходство nginx. Дальше сарафанное радио и стековерфлоу (где тыкай, а не думай). И теперь имеем кучу статей, какой nginx клевый.