Ok. Tyvärr har jag ingen aning om vad Npgsql.dll ens är (annat än att jag antar att pg står för "postgres") och Mono har jag enbart kört under Linux för flera år sedan, så jag har ingen mer hjälp att ge. Men jag förslår att du kollar dokumentation/systemkrav för Npgsql.
Sen var jag lite otydlig med var du bör lägga den Mono-dll som behövs (är det en separat för Mono.Security kanske?). Om den är registrerad i Windows GAC så behöver du inte kopiera den någonstans utan runtimen kommer hitta den på egen hand. Om inte, så måste rätt fil (eller filer, om det finns fler beroenden) placeras någonstans där runtimen kan hitta den, exempelvis i samma mapp som din kompilerade exe-fil hamnar i. Kör du Visual Studio kan du t.ex. lägga till en referens till Mono.Security, det borde lösa problemet.
Men som sagt, ned på detaljnivå i just ditt specifika fall vet jag inget, jag gissar bara.
Värt att notera är att Mono är ett alternativ till Microsoft.NET - det är en komplett runtime med allt som behövs (ok, Mono implementerar inte 100% av .NET men en hel del). Antingen kör man det ena eller det andra. I just ditt fall så har Npgsql.dll uppenbarligen ett beroende av minst ett Mono-bibliotek, så du måste som minst gräva rätt på den eller de Mono-dll:er som krävs och referera in dem.
Här har du för övrigt något som verkar relevant i ditt fall:
https://github.com/npgsql/npgsql/issues/1018