If DNA is more or less the same in all cells, and DNA is used to produce proteins from aminoacids, then do all cells produce the same proteins or are they specialised/controlled by something?
Each cell will indeed have the same DNA sequences and ability to produce any given protein. However, there are certain factors (transcription factors) and cellular conditions within a cell that dictate which proteins are produced. If the conditions are right then only certain proteins will be produced depending on what type of cell it is. This process by which a cell continues to express selected proteins and becomes specialized for a specific function, is called differentiation. Expression of proteins that are not required can be prevented by transcriptional repressors (or by epigenetic mechanisms such as methylation of DNA sequences). So to answer your question, while cells contain the instructions (DNA sequences) to produce potentially any protein, not every type of protein will always be produced.
Keep in mind that my answer is very basic; the answer isn't as simplistic as I'm making it out to be.
Protein expression in cells is majorly governed by a concept called RNA splicing. This also forms the basis of different types of cells which has different proteins expressed at different levels, but from the same nuclear material: DNA, which can be visually seen here. Differential splicing leads to various isoforms of the mRNAs, which are precursors of protein expression in cell. So, based on how the splicing occurs in different types of cells, different proteins are expressed at different levels, which constitute to the different phenotypes. This is just a brief introduction to these concepts following the previous comments, but I thought it would be a good time to mention these as these are pertinent.
I am new to this site, so may be not giving the best and most comprehensice answers, but I hope this is useful.
In a simplistic sense DNA can be viewed as more or less the same amongst species, but with a variability of say 0.2% between humans and chimps that might not seem like much, but it really is. A human genome is over 3 billion bases long, which means that 10s of millions of bases are different between humans and chimps and every three bases encodes an amino acid that then become one piece of a protein.
As such there is a high degree of variability in the proteins expressed in a given cell. There are many homologous proteins between cells/species, which are proteins translated/transcribed from variable DNA/mRNA sequences, but ultimately serve the same function. Additonally, even though all human cells have the same genome (within the same individual), specialized control and compartmentalization of the genetic code (DNA) is why we have different organs and tissues such as the heart, skin, and lungs.