Well, using table or not depends, but if you are going to design a form, using table element is not the only thing which can design it perfectly, if you want, simply use an ul element with label and see how flawlessly you design the same thing without table or div
Demo
ul {
margin: 50px;
}
ul li {
margin-bottom: 10px;
font-family: Arial;
}
ul li label {
display: inline-block;
width: 100px;
}
Infact you can use float on the li by assigning a fixed width to your ul element, this will result in a two column form, increase the width and make it three, so you don't need table here.