Like most of these threads, we don't know the whole story. How much networking is required? Is this going to be a high volume web server, a file server, a print server? How many concurrent connections? Bandwidth? Just an IoT toy?
I haven't done it with the Pi but I have used Berkeley Sockets to implement a simple server on Linux. It took just a few lines of code, no more than a dozen, for what I wanted to do.
Add a MagJack to the original LPC1768 MBED board and use the provided network stack (based on lwIP). Here you wind up having to implement a state machine to keep track of the connection state but it was pretty easy. I just built a daughter card with a MagJack and the project was complete. Again, I was using Sockets to connect to my LaserJet printer. The reason this was easy is that the lwIP library is known to work on the LPC1768!
I have always wondered whether the WizNet devices were capable of multiple connections and decent bandwidth. How many packets in flight? Packet reordering?
The nice thing about using the Pi is that you can work at a much higher level. Networking is just a fact, it is known to work. You can spend time working on your application without having to debug the network code.
Microchip has a pretty decent stack for their PIC32 devices. I assume they have ported it to their ARM devices.