Gnutella yra decentralizuotas peer-to-peer failų bendrinimo tinklas. Su panašiais rezultatais kaip ir senojo „Napster“, „Gnutella“ vartotojai gali ieškoti dainos ar failo naudodami vieną iš „Gnutella“ klientų ir atsisiųsti tą failą į savo standųjį diską. Gnutella skiriasi nuo „Napster“ tuo, kad joje nėra centrinio serverio, o kiekvienas tinkle sujungtas kompiuteris veikia ir kaip serveris, ir kaip klientas.
Norėdami naudoti Gnutella, vartotojai talpina failus, kuriuos nori bendrinti, į standųjį diską ir padaro juos prieinamus kitiems, kad juos galėtų atsisiųsti įprastu lygiaverčio ryšio metodu. Tada, naudodamas vieną iš daugelio Gnutella klientų, įskaitant BearShare, Gnucleus, LimeWire, Morpehus, WinMX ir XoloX, vartotojas programinės įrangos paieškos laukelyje įveda dainos arba failo pavadinimą. Tada kompiuteris per Gnutella prisijungia prie bent vieno kito kompiuterio ir žiūri, ar tame kompiuteryje yra norimas failas. Kompiuteris buvo užprogramuotas kito kompiuterio IP adresu arba naudoja vieną iš programinės įrangos iš anksto užprogramuotų serverių. Tada tas kompiuteris prisijungia bent prie vieno kito, o procesas tęsiasi ir tęsiasi, kol randamas failas arba baigiasi paieškos trukmės (TTL) limitas.
Viena iš labiausiai reklamuojamų Gnutella savybių yra tai, kad ji visada veikia; jei vartotojas gali prisijungti prie bent vieno kito kompiuterio, paieškos metu užklausiama viso tinklo, o ne tik vieno serverio. Tačiau tai reiškia, kad nėra garantijos, kad norimas failas yra bet kuriame iš kompiuterių, pasiekiamų per tinklą. Paieška taip pat gali užtrukti minutę ar ilgiau, kol bus gautas atsakymas.
Nors pati Gnutella yra legali Jungtinėse Amerikos Valstijose, kadangi dalijimasis viešojo domeno failais yra teisėtas, Gnutella naudojimas platinant autorių teisių saugomą muziką ir kitus failus yra neteisėtas. Tačiau dėl to, kad „Gnutella“ nėra vieno centrinio serverio, teismo nurodymu išjungti paslaugą labai sunku. Kai kurie paslaugos priešininkai rado būdų, kaip sutrikdyti tinklą dėl netikrų paieškų ar sugadintų failų antplūdžio.
Pirmąjį „Gnutella“ klientą 2000 m. sukūrė „Nullsoft“, kurį ką tik įsigijo AOL. Programą buvo galima atsisiųsti įmonės serveriuose vieną dieną – 14 m. kovo 2000 d. Vėliau AOL atsisakė programos dėl teisinių problemų, tačiau ne anksčiau, nei tūkstančiai ją atsisiuntė. Šios atsisiųstos kopijos paskatino atvirojo kodo ir nemokamus klonus, o tai ir toliau yra tokia, kaip Gnutella egzistuoja ir šiandien.