Nova = new, juna = young. So malnova is the opposite of "new" and maljuna is the opposite of "young". English and German merge tham as "old / alt" but Esperanto keeps them separate (as does, for example, Turkish: eski = malnova, yaşlı = maljuna.)
At a first approximation, "malnova" is used for objects and "maljuna" for people.
But "malnova" can also be used for "old" in the sense of "former".
Mia malnova kuiristo = my old cook (the 19-year-old one I used to have before I fired him and employed a new cook)
Mia maljuna kuiristo = my old cook (the 72-year-old one who still works for me together with my young cook)
bildo - picture (in general); a representation of an object that was captured on film, painted by brush, drawn by pencil, etc. It could even be something carved out of wood, for example.
foto - a picture taken by photography, i.e. on film or digitally.
So all fotoj are bildoj, but not all bildoj are fotoj.