I have worked on my PhD project in the field of Intelligent Transport System, which has similar development requirements as you mentioned in this post. In that project I have done a C# based software prototype to demonstrate the integration of GPS, GIS,wireless communication, and other algorithms.
Primarily I have adopted Dotspatial components to develop this prototype. It is an excellent GIS/GNSS library which you can adopt its Positioning Component and GIS Component to perform what you need in a short time. I have also touched with SharpMap this year and I think it has similar function like Dotspatial, and it is a fairly light-weight and easy-to-use library. Therefore, regarding to your question, my suggestions are:
1.Display map from sharpfile (Both Dotspatial and SharpMap can do this easily via one hour tutorial)
2.Display movement of a vehicle with regards to velocity input (I think you might need GPS?, and Dotspatial has GPS component to do it. SharpMap has a sample application to show variable object in layer. I think you also can use paint event to display your vehicle as a dot, or trajectory)
3.Display latitude, longitude, elevation, pitch and roll (latitude, longitude and elevation can be easily captured from map and GPS, dependent on your data sources. For pitch and roll, I think you might need mathematical transformation and calculations from sensors, e.g. accelerometers)
4.Vehicle icon representing correct geographic location (see question 2, SharpMap has a sample application)
5.Calculate actual distance travelled (Dotspatial source codes have classes to describe this concept in geographical space. I remember SharpMap has one as well, but I am not sure).