Of course an USB-UART solution would likely be the easiest, but don't expect very high speeds. Max speed with FTDI devices (and I don't think you'll get higher with competitors) is something like 3Mbits/s, which will yield something like 300KB/s tops.
If you want better throughput, IME a FT232H or FT2232H in parallel mode would be the fastest way to get there.
Real-world data: in asynchronous mode ("FT245" mode), you're going to get something like 6-8MB/s max. Simple to interface, may be enough for your needs. In synchronous mode, you're going to realistically get something like 30MB/s max, which is not too shabby. Interfacing in synchronous mode is a bit more involved though, and will usually mean having to deal with an additional clock domain in your FPGA.
For even faster speed, USB SS (for instance with FTDI's FT6xx offering) will get you much higher throughput, but if you're looking for an easy solution, the former IMO will be much easier and cheaper. You can find modules/breakout boards for FT232H or FT2232H for pretty cheap, and easy to use. I couldn't find such boards at the moment for FT60x chips, and the official dev boards are more expensive (~$100), and have connectors that may not be easy to interface with depending on your own board (such as FMC.)
Of course as someone suggested, you can make your own boards for this, but that's going to be some additional dev time and is going to definitely cost you more than buying dev boards or modules.
Yet another option would be to embed some soft ethernet controller in your FPGA and add an external ethernet PHY+connector (you can find ready-made boards with that.) I believe some people here have experience doing this, but it's going to be more involved than the above IMO.