This work is dedicated to developing algebraic methods for channel coding. Its goal is to show that in different contexts, namely single-antenna Rayleigh fading channels, coherent and non-coherent MIMO channels, algebraic techniques can provide useful tools for building efficient coding schemes. Rotated lattice signal constellations have been proposed as an alternative for transmission over the single-antenna Rayleigh fading channel. It has been shown that the performance of such modulation schemes essentially depends on two design parameters: the modulation diversity and the minimum product distance. Algebraic lattices, i.e., lattices constructed by the canonical embedding of an algebraic number field, or more precisely ideal lattices, provide an efficient tool for designing such codes, since the design criteria are related to properties of the underlying number field: the maximal diversity is guaranteed when using totally real number fields and the minimum product distance is optimized by considering fields with small discriminant. Furthermore, both shaping and labelling constraints are taken care of by constructing Zn-lattices. We present here the construction of several families of such n-dimensional lattices for any n, and compute their performance. We then give an upper bound on their minimal product distance, and show that with respect to this bound, existing lattice codes are optimal in the sense that no further significant coding gain could be reached. Cyclic division algebras have been introduced recently in the context of coherent Space-Time coding. These are non-commutative algebras which naturally yield families of invertible matrices, or in other words, linear codes that fulfill the rank criterion. In this work, we further exploit the algebraic structures of cyclic algebras to build Space-Time Block codes (STBCs) that satisfy the following properties: they have full rate, full diversity, non-vanishing constant minimum determinant for increasing spectral efficiency, uniform average transmitted energy per antenna and good shaping. We give algebraic constructions of such STBCs for 2, 3, 4 and 6 antennas and show that these are the only cases where they exist. We finally consider the problem of designing Space-Time codes in the noncoherent case. The goal is to construct maximal diversity Space-Time codewords, subject to a fixed constellation constraint. Using an interpretation of the noncoherent coding problem in terms of packing subspaces according to a given metric, we consider the construction of non-intersecting subspaces on finite alphabets. Techniques used here mainly derive from finite projective geometry.