The ESP8266 is a microcontroller manufactured by a company called Espressif Systems, and it is mounted on a small circuit board so that it is useable. It is an Arduino component. It can be programmed using a Mac or a Pi. I guess a PC or any linux based machine would be equally as effective.
The ESP8266 came to my attention during my search for a method to transmit data collected by a Pico to the Pi wirelessly. The main issue with the initial Pico boards was their lack of internet connectivity, prompting the use of the ESP8266 to facilitate data transfer from the Pico to the internet.
So I took the plunge, and shelled out a tenner or so and bought one along with a USB cable for my Pi, only to discover that the USB pinout was not standardised, leading to multiple plug/socket configurations. Subsequently, I found that the connector I acquired, although the right one for the board, could be inserted in two orientations due to the lack of a polarised design, which I resolved by marking it with white paint. Furthermore, I learned that there were numerous variations of the ESP8266, with mine being the Feather Huzzah version, after addressing these initial challenges, I continued with my project.
“Arduino is an open-source electronics platform based on easy-to-use hardware and software.” More detail at:
https://www.arduino.cc/
I downloaded the Arduino 2 app. onto a Pi 4, so I could try out the ESP8266. I soon realised that I could actually do away with the Pico altogether.
https://en.wikipedia.org/wiki/ESP8266
This section of the website is about projects I built using the ESP8266.
Espressif wrote an exhaustive document about about the esp32 (which is similar to the exp8266) is here:
https://espressif.github.io/esp32-c3-book-en
There is a good comparison between esp32 and esp8266 at: https://electronicshacks.com/esp32-vs-esp8266/
The article recognises that each unit has its own set of benefits so that, depending on the task being undertaken, one or the other or either are the most appropriate to use.