Niang urodził się w senegalskim mieście Matam, a już jako młody chłopiec wyemigrował z rodzicami do Francji. Tam rozpoczął piłkarską karierę w klubie Saint-Andre-les-Vergers, a następnie trafił do Troyes AC i w 1999 roku stał się zawodnikiem pierwszego zespołu. Debiut w Ligue 1 zaliczył jednak dopiero sezon później, 28 lipca 2000, a Troyes przegrało z Olympique Marsylia 1:3. W Troyes grał nie miał miejsca w podstawowym składzie drużyny. W jego barwach zadebiutował też w europejskich pucharach – w Pucharze UEFA w sezonie 2001/2002. Rundę jesienną sezonu 2002/2003 spędził także w Troyes, ale na wiosnę został wypożyczony do FC Metz i awansował z nim do Ligue 1.
Latem 2003 Niang przeszedł do RC Strasbourg. W sezonie 2003/2004 zdobył 9 bramek w lidze, a w kolejnym -12, zostając najlepszym strzelcem zespołu. W tym samym roku wywalczył Puchar Ligi Francuskiej (zagrał w finale z SM Caen). Latem 2005 za 7 milionów euro Mamadou trafił do Olympique Marsylia. W jej barwach zadebiutował 16 lipca w wygranym 3:2 meczu z BSC Young Boys w Pucharze Intertoto (w debiucie zdobył gola). Z Marsylią awansował do Pucharu UEFA, a w lidze zajął 5. miejsce, w linii ataku najczęściej grając z Toifilou Maoulidą czy Mickaëlem Pagisem, ale to Niang z 10 golami na koncie był najlepszym strzelcem swojego klubu. Dotarł też z nim do finału Pucharu Francji. Osiągnięcie to powtórzył w sezonie 2006/2007 i wywalczył wtedy wicemistrzostwo kraju ponownie zostając najlepszym strzelcem klubu. Wraz z OM zdobył Puchar Ligi Francuskiej, mistrzostwo Francji i Superpuchar Francji w 2010. 14 sierpnia przeniósł się do Fenerbahçe SK za kwotę 8 milionów euro. Od sezonu 2011/12 występuje w katarskimAl-Sadd. 31 stycznia 2013 roku został wypożyczony do tureckiego Beşiktaşu JK do końca sezonu. 3 marca 2013 roku trafił swojego pierwszego gola i zaliczył asystę w wygranym 3-2 meczu ze swoim byłym klubem, Fenerbahçe.