The Top Coat is designed to keep both you and your suit protected from the weather.
If you plan to wear your overcoat for years to come, make sure you buy a coat that is made of 100% wool.
Cashmere coats are nice, soft, and warm but they will show wear on the cuffs, and the collar. A good compromise is a wool/ cashmere blend coat.
The coat sleeves should completely cover the suit and shirt sleeve, and may even reach a little further down. You should not get cold on your wrists when you wear gloves with it.
Traditionally, overcoats were long, extending almost all the way to the ankles. Today, most men wear their coats knee-length.
When you buy an overcoat, make sure to wear a shirt and a sports coat or suit jacket because the coat has to fit on top of it.
Higher end coats have a sewn canvas. The other option is to go with a fused canvas. A sewn canvas is definitely more durable and built to last. Fused interlinings can come loose after a few years.