In addition to using the booktabs package (to get good-looking, i.e., well-spaced, horizontal lines), I would also recommend you use the tabularx package to simplify the job of getting four equal-width columns.

\documentclass{article} \usepackage{booktabs,tabularx} \usepackage[margin=1in]{geometry} % set margins to meet your document's needs \newcolumntype{Y}{>{\raggedright\arraybackslash}X} % use ragged-right, not fully-justified, look in narrow columns \begin{document} \begin{table}[t] \caption{Minimum Requirements for Automatic Readmission into the Commerce Faculty} \label{table:mr} %\centering % not needed, since table is as wide as text block \begin{tabularx}{\textwidth}{@{}lYYYY@{}} \toprule &\multicolumn{2}{c}{\bfseries BCom} &\multicolumn{2}{c}{\bfseries B.Bus Sci} \\ \cmidrule(lr){2-3} \cmidrule(l){4-5} &Number of courses required to pass &Cumulative Total of Courses & Number of courses & Cumulative Total of Courses\\ \midrule First year & 4 & 8 & 4 & 18 \\ \bottomrule \end{tabularx} \end{table} \end{document}
Addendum: Incidentally, the look of the table you show in your posting can not be achieved when using the commands of the booktabs package. If you really need all those vertical and horizontal lines, you shouldn't use the command \toprule, \bottomrule, \midrule and \cmidrule. Instead, just use the basic-LaTeX \hline instruction. (You can, of course, still make use of the tabularx package to simplify the creation of equal-width columns for columns 2 to 5 of the table.)
These modifications will will lead to the table shown below. I hope you will agree that the "booktabs look" -- no vertical lines, fewer horizontal lines overall, and well-spaced rules -- is much preferable to what one might call the "spreadsheet look".

\documentclass{article} \usepackage{tabularx} \usepackage[margin=1in]{geometry} % choose margin as needed \newcolumntype{Y}{>{\raggedright\arraybackslash}X} \begin{document} \begin{table}[h!] \caption{Minimum Requirements for Automatic Readmission into the Commerce Faculty} \label{table:mr} \begin{tabularx}{\textwidth}{|l|Y|Y|Y|Y|} \hline &\multicolumn{2}{c|}{\bfseries B. Com} &\multicolumn{2}{c|}{\bfseries B. Bus. Sci} \\ \hline & Number of courses required to pass & Cumulative Total of Courses & Number of courses required to pass & Cumulative Total of Courses \\ \hline First Year & 4 & 8 & 4 & 18 \\ \hline Second Year & 10 & 16 & 11 & 16 \\ \hline Third Year & 18 & 24 & 20 & 25 \\ \hline \end{tabularx} \end{table} \end{document}
bookstable, you have a typo here: {{BCom}, and each row must end with \\ (missing in your "Number of courses ..." row). And the total of columns combined in multicolumns should equal your total number of columns of your table, so just put a & at the beginning of the row to produce an empty first colum.